HTTP協議中的except=100-continue


通過HttpWebRequest訪問數據時,總是無法返回。最后通過抓包發現發送的HTTP包的頭部有一個except=100-continue項。百度這個頭信息,如下:

Expect 是一個請求消息頭,包含一個期望條件,表示服務器只有在滿足此期望條件的情況下才能妥善地處理請求。
規范中只規定了一個期望條件,即 Expect: 100-continue, 對此服務器可以做出如下回應:

100 如果消息頭中的期望條件可以得到滿足,使得請求可以順利進行的話,
417 (Expectation Failed) 如果服務器不能滿足期望條件的話;也可以是其他任意表示客戶端錯誤的狀態碼(4xx)。

例如,如果請求中 Content-Length 的值太大的話,可能會遭到服務器的拒絕。
常見的瀏覽器不會發送 Expect 消息頭,但是其他類型的客戶端如cURL默認會這么做。

需要將這個頭部信息移除,request.ServicePoint.Except100Continue = false即可。


免責聲明!

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



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