编程语言
首页 > 编程语言> > HttpClient之可恨的Expect(C# http 请求卡住的解决办法)

HttpClient之可恨的Expect(C# http 请求卡住的解决办法)

作者:互联网

HttpClient之可恨的Expect(C# http 请求卡住的解决办法)

今天用HTTP.HttpClient这个对象开发的时候遇到一个奇怪的问题 当POST一个页面的时候始终卡住提交不成功

最初以为协议有错误就抓包测试在抓包在测试 最后想到是不是HttpClient的BUG?当使用另一种语言提交同样的包就没问题

后来抓包对比这2个语言发出的包发现HttpClient默认是开启Expect协议头的 找了半天才找到取消Expect协议头的方法 Client.DefaultRequestHeaders.ExpectContinue = False

至此问题轻松解决  HttpWebRequest取消的方法是HttpWebRequest.Expect= False

其实我知道HttpWebRequest默认是开启Expect的只是没想到HTTP.HttpClient的默认也是开启的

 

 

转载于:https://www.cnblogs.com/Ghsoft/p/5130448.html

标签:http,C#,卡住,默认,Expect,HttpWebRequest,HTTP,HttpClient
来源: https://www.cnblogs.com/Xupp/p/15775450.html