C# Web API 502 Bad GateWay 问题排解

前情提要

使用HttpClient Post时,碰到API无回应,大约两分钟后出现502 Bad GateWay的错误,但使用Postman却可以成功Post。后来透过Fiddler找出Header多了一个 "Expect:100-continue",纪录下解决过程
(HttpWebRequest也会遇到同样的问题)


Postman

Postman设定
Setting -> Proxy的Tab -> Port设定8888
http://img2.58codes.com/2024/20110063j5d7fHTVq6.png发送Request后Fiddler查看Postman传送的Header
http://img2.58codes.com/2024/20110063jwj4h6NQEu.png

C#

程式新增设定WebProxy
//Fiddler预设监听8888端口var client = new HttpClient(new HttpClientHandler{ Proxy = new WebProxy("127.0.0.1", 8888), UseProxy = true})
发送Request后Fiddler查看程式传送的Header
http://img2.58codes.com/2024/201100630pJ9e6siXm.png

解法
把ExpectContinue设定成false即可

client.DefaultRequestHeaders.ExpectContinue = false;

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章