繁体   English   中英

期望:100-继续

[英]Expect: 100-continue

关于这个话题有很多问题,但是 - 他们没有给我答案。

根据建议 - 有一个设置ServicePointManager.Expect100Continue = false 但这是不可接受的,因为这将是一个模块,与其他十几个异步工作。 所以可接受的解决方案 - 是每个连接属性。 有一些建议如何设置它,但它似乎不起作用。

这是代码:

var conuri = new Uri(connectionString);
var sp = ServicePointManager.FindServicePoint(conuri);
sp.Expect100Continue = false;

_request = (HttpWebRequest)WebRequest.Create(conuri);
_request.ContentType = "text/xml";
_request.Method = "POST";

_request.ContentLength = dataToSend.Length;
requestStream = _request.GetRequestStream();
requestStream.Write(dataToSend, 0, dataToSend.Length);

问题是,在这一点上,“requestStream.Write” - header Expect: 100-continue仍然被添加,但它不应该根据我在这里阅读的建议: C# Expect100Continue header request

你可以这样做:

_request.ServicePoint.Expect100Continue = false;

这将禁用特定HttpWebRequest实例的Expect: 100-continue

当此属性设置为 true 时,使用 POST 方法的客户端请求期望从服务器接收 100-Continue 响应,以指示客户端应发送要发布的数据。 当服务器根据请求标头打算拒绝请求时,此机制允许客户端避免通过网络发送大量数据。

ServicePointManager.Expect100Continue = true;

暂无
暂无

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

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