繁体   English   中英

.Net Core 3.1 - HTTP 请求 - 分别发送标头和正文

[英].Net Core 3.1 - HTTP request - Send header and body separately

我正在使用旧服务器,它要求 HTTP POST 请求中的标头和正文分开发送。 我想这是通过“Expect: 100-continue”实现的,它存在于旧版的客户端消息标头中。

我正在使用 Net Core 3.1 编写新客户端,它似乎不支持 HttpWebRequest 类中的 Expect100Continue(根据: https : //github.com/dotnet/runtime/issues/25881

有没有可能,用 Net Core 3.1 发送 HTTP 请求,正文和标头分开?

快速解决方案是关闭 net core 的 HTTP 处理程序

AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", false);

在此切换后,将使用 .net 框架中的处理程序。 看起来 SocketsHttpHandler (至少与 HttpWebRequest 结合使用)不支持分离的标头和正文,即使使用 HTTP 1.0 也是如此。

https://docs.microsoft.com/en-us/dotnet/api/system.appcontext.setswitch?view=netcore-3.1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM