前言:本人最近較多使用.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.
.......
等等,,
解決方案:網上有很多類似的問題的解答,我個人遇到的任務取消,是因為訪問國外目標服務器超時導致的錯誤,進而導致了異步任務取消例外, 當然這還是在大神的提醒下猜到的! 在翻墻環境下請求國外服務器就正常了,擦啊!! 坑中坑,還以為是.net Core的httpClient有什么問題呢,不明所以, 最后才查清楚, 遇到類似問題的朋友們,自己查下內部例外,多百度吧,如果請求的是國外服務器,可以試試翻墻后的效果,
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/64903.html
標籤:.NET Core
上一篇:Linux部署.NetCore站點 使用Supervisor進行托管部署
下一篇:.net視頻
