Kev*_*xes 4 c# post httpwebrequest
我使用HttpWebRequest
,以POST
通过Web服务的字节数组图片,图片大小是一样的东西byte[4096]
码:
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(wsHost);
webRequest.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip,deflate");
webRequest.Headers.Add(HttpRequestHeader.KeepAlive, "true");
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
The underlying connection was closed. A connection that was expected to be kept alive was closed by the server
Run Code Online (Sandbox Code Playgroud)
这是服务器问题,还是我的发布问题?
它可能是很多东西.你能连接到服务器吗?
如果是这样,请尝试通过关闭预期100继续(在您进行POST之前)
System.Net.ServicePointManager.Expect100Continue = false;
Run Code Online (Sandbox Code Playgroud)
根据HTTP 1.1协议,当发送此标头时,表单数据不会随初始请求一起发送.相反,如果正确实现,此标头将发送到Web服务器,响应100(继续).但是,并非所有Web服务器都能正确处理此问题,包括我尝试发布数据的服务器.
通过http://haacked.com/archive/2004/05/15/http-web-request-expect-100-continue.aspx
如果这不起作用另一个资源:http://geekswithblogs.net/Denis/archive/2005/08/16/50365.aspx建议许多人通过将他们的请求制作为HTTP 1.0请求来解决:
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(wsHost);
webRequest.KeepAlive = false;
webRequest.ProtocolVersion=HttpVersion.Version10;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6299 次 |
最近记录: |