发起http请求的时候出现System.Net.WebException

新手上路,请多包涵

问题描述

使用winform客户端通过refit发送http请求到.net core 服务的时候出现了System.Net.WebException: The request was aborted: The request was canceled.异常。
发现只有个别人的客户端出现这个问题,只在登录后出现一次,之后不再出现。从客户端记录的log可以看到,在1s之内发送了4个不同的请求只有一个失败了,重新发送请求就没有问题。

问题出现的环境背景及自己尝试过哪些方法

win7系统出现问题,只有个别人会出现,大部分人没有问题。

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
{

        if (!string.IsNullOrEmpty(_userName))
            request.Headers.Add("username", _userName);

        var cache = MemoryCache.Default;
        string token = cache["AccessToken"] as string;
        if (!string.IsNullOrEmpty(token))
            request.Headers.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue(token);
        var response = await base.SendAsync(request, cancellationToken).ConfigureAwait(false);
        return response;
    }

你期待的结果是什么?实际看到的错误信息又是什么?

期望返回server返回正常的response。看到的错误信息是System.Net.WebException: The request was aborted: The request was canceled.

阅读 4k
1 个回答

抛出的异常时请求被取消了CancellationToken cancellationToken是不是这个取消有人做了什么事情,推荐你打断点调试下

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进