httpclient请求啥状况200状态下返回的response的数据为空

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了httpclient请求啥状况200状态下返回的response的数据为空相关的知识,希望对你有一定的参考价值。

参考技术A 200只是代表成功返回,但是并不是代表返回的就是对的

当 HttpClient 超时时,Web API 控制器中的请求会发生啥?

【中文标题】当 HttpClient 超时时,Web API 控制器中的请求会发生啥?【英文标题】:What happens to request in Web API controller when HttpClient times out?当 HttpClient 超时时,Web API 控制器中的请求会发生什么? 【发布时间】:2015-07-16 05:27:08 【问题描述】:

我试图了解当发送请求的 HttpClient 在服务实际完成处理并发回响应之前实际超时时,基于 Web API 的服务控制器接收到的请求会发生什么情况。

【问题讨论】:

【参考方案1】:

发生的情况是HttpClient 将关闭底层连接并抛出TaskCancelledException。异常StatusCode 将表明已经超时。

另一方面,在 WebAPI 方面,会注意到客户端断开连接并将其设置为 HttpResponse.ClientDisconnectedToken(类型为 CancellationToken)取消。更多关于 here

【讨论】:

如果 HttpClient 超时,则抛出 TaskCancelledException @DarrelMiller 你是对的。将其与WebClient 混合在一起。固定。【参考方案2】:

增加HttpClient.Timeout 属性的值。

【讨论】:

以上是关于httpclient请求啥状况200状态下返回的response的数据为空的主要内容,如果未能解决你的问题,请参考以下文章

网页状态码为:200,是啥意思

ASP.NET Core HttpClient 请求在 webapi 返回 406 时返回 200

HTTP状态码都有哪些?是啥意思

前端发请求后端没接受到是啥情况,状态码200

服务器常见页面访问返回错误信息(404 500 400)表示啥意思

getResponseCode获取URL响应状态码每次都是返回200是啥原因