HttpWebRequest -底层连接已关闭:发送时发生意外错误

本文关键字:错误 意外 连接 HttpWebRequest | 更新日期: 2023-09-27 18:08:17

我试图将JSON数据发布到web API并获得结果JSON对象。我使用HttpWebRequest发布到使用基本身份验证的https地址。在request.GetResponse()中,我得到了

的错误
The underlying connection was closed: An unexpected error occurred on a send.

内部异常
Received an unexpected EOF or 0 bytes from the transport stream.

我的测试应用程序是针对。net 4.0编译的,应用程序可以在运行4.5的机器上运行,但是不能在运行4.0的机器上运行。在这些机器上升级到4.5并不是一项简单的任务。在仔细检查跟踪日志时,我注意到在发生故障之前只有一个不同之处,我将其包含在下面。如有任何帮助,不胜感激。

System.Net Information: 0 : [5876] ConnectStream#9956401 - Sending headers
{
Content-Type: application/json
Authorization: Basic <encoded base64 auth string is here>
Host: <host name is here>
Content-Length: 130
Expect: 100-continue
Connection: Keep-Alive
}.

在试图研究这个错误时,我遇到了两个反复出现的问题,这两个问题似乎都不适用于我的错误,但我还是尝试了修复。我尝试过强制SSL3(尽管身份验证不是问题),并关闭Keep-Alive。既不工作。

HttpWebRequest -底层连接已关闭:发送时发生意外错误

我也遇到过类似的问题。我试图通过。net WebClient类下载一个文件。

原来Apache服务器在VirtualHost::ServerName中有错误的名称。