【C#】System.Net.HttpWebRequest Error: 417 “Expectation Failed.”

/
0 Comments
在本機偵錯某些功能發現會有這個錯誤訊息,記錄網路上查到的資訊。


原因 :

造成這個錯誤的原因在於使用System.Net.HttpWebRequest會預設在每個Request的Header加上'HTTP header "Expect: 100-Continue"'這個static的property,一些Server在接收到這個Header的設定就會回傳給你Error:417。


解決:

設定 System.Net.ServicePointManager.Expect100Continue = false;
或是在config的system.net加入以下區段
<system.net>
  <settings>
        <servicePointManager expect100Continue="false" />
    </settings>
</system.net>



另外補充遇到Error:411的問題,解決方法是把webrequest的ContentLength設定為0。



You may also like

沒有留言: