.Net core webapi使用httpClient發送異步請求遇到TaskCanceledException: A task was canceled


  前言:本人最近較多使用.net core的項目,最近在使用httpClient發送請求的時候,遇到服務器處理時間較長時,就老是會報異常:TaskCanceledException: A task was canceled。   我的使用異步請求的方法也較為老套,使用的Task a=()=>{};   a.Wait();  來等待異步操作的結束,這種方式執行等待時,當程序出現錯誤,就會出現上面的異常信息,這時候我們需要檢查異常里的內部異常看看有沒有有用的信息?

 

  常見的內部異常有:A task was canceled

          The response ended prematurely.

          Unable to read data from the transport connection

          Error while copying content to a stream.

          .......

          等等。。

 

  解決方案:網上有很多類似的問題的解答,我個人遇到的任務取消,是因為訪問國外目標服務器超時導致的錯誤,進而導致了異步任務取消異常。   當然這還是在大神的提醒下猜到的!  在FQ環境下請求國外服務器就正常了,擦啊!!  坑中坑,還以為是.net Core的httpClient有什么問題呢,不明所以。  最后才查清楚。   遇到類似問題的朋友們,自己查下內部異常,多百度吧,如果請求的是國外服務器,可以試試FQ后的效果。

          

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM