await client.PostAsync寻求问题帮助 懂的进来

good-code 2015-10-15 02:58:35



HttpResponseMessage response = await client.PostAsync("api/xxx/test" + "?" + args, new StringContent(""));

寻求帮助,这段代码经常会卡住,也没有抛出异常 ,请问是线程阻塞了还是timeout 网络超时 如何抛出相关错误?
当前try catch 并没有捕获异常。也就没办法知道什么原因导致卡在那段代码上了 第一次执行的时候一般都可以,执行完第一次后,马上执行第二次就会卡住。。
...全文
995 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_39494704 2018-12-25
  • 打赏
  • 举报
回复
我也碰到了类似的问题,不过我的问题是,调用url方法,这个方法的运行,需要很长的时间,我的程序等待不了那么长,结果报错了。我尝试这设置timeout时间,把这个等待时间加长,这样可以等到url方法运行完,然后在继续执行。
lincolnandlinda 2015-10-16
  • 打赏
  • 举报
回复
从代码上看,线程没有被阻塞。我怀疑是服务器端在响应这个请求时花费了很长时间或者是请求的 uri错误导致一直在寻找目标地址。如果不想长时间等待就把超时时间设短些,HttpClient有个TimeOut属性。
  • 打赏
  • 举报
回复
将await去掉,改成自己调用result来获取response试试呢
angel6709 2015-10-16
  • 打赏
  • 举报
回复
.CintinueWith()
Poopaye 2015-10-15
  • 打赏
  • 举报
回复
不是没异常么
good-code 2015-10-15
  • 打赏
  • 举报
回复
An error occurred while sending the request 估计是。只能做异常处理了
Poopaye 2015-10-15
  • 打赏
  • 举报
回复
服务器没响应了吧,抓个包看看有没有返回

111,131

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧