“连接尝试失败,因为连接方在一段时间后没有正确响应”使用WebClient
我正在使用以下代码在本地机器上工作,但当我在服务器上尝试相同的代码时,它会抛出我的错误
连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机无法响应
这是我的代码:
WebClient client = new WebClient(); // Add a user agent header in case the // requested URI contains a query. //client.Headers.Add ("ID", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)"); Stream data = client.OpenRead("http://" + Request.ServerVariables["HTTP_HOST"] + Request.ApplicationPath + "/PageDetails.aspx?ModuleID=" + ID); StreamReader reader = new StreamReader(data); string s = reader.ReadToEnd(); Console.WriteLine(s); data.Close(); reader.Close();
我收到了错误
Stream data = client.OpenRead("http://" + Request.ServerVariables["HTTP_HOST"] + Request.ApplicationPath + "/PageDetails.aspx?ModuleID=" + ID);
是因为任何防火墙设置?
我有类似的问题,不得不使用以下方法将URL从字符串转换为Uri对象:
Uri myUri = new Uri(URLInStringFormat, UriKind.Absolute);
(URLInStringFormat是您的URL)尝试使用Uri而不是字符串进行连接:
WebClient client = new WebClient(); client.OpenRead(myUri);
在web.config
明确设置代理地址解决了我的问题
在使用Web服务时解决“TCP错误代码10060:连接尝试失败…”
是否可以在浏览器中访问此代码的URL?
http://" + Request.ServerVariables["HTTP_HOST"] + Request.ApplicationPath + "/PageDetails.aspx?ModuleID=" + ID
您需要validation的第一件事是您正在创建的URL是正确的。 然后检查浏览器以查看它是否正在浏览。 然后使用Fiddler工具检查通过网络传递的内容。 可能是通过代码调用的URL被错误地转义。
然后检查防火墙相关问题。
-
第一种可能性 :Related Web.config文件中的加密字符串应与连接字符串中输入的相同(如上所示)以及当您在“注册表编辑器”或
regedit.exe
更改任何内容时(如运行时所写) ),然后在任何更改后,关闭注册表编辑器并通过在运行时键入IISRESET
重置您的Internet信息服务。 然后登录到您的环境。 -
在运行时键入Services.msc并检查:
-
ASP.NET状态服务的状态已启动。 如果没有,则右键单击它,通过“属性”,将其“启动”类型更改为“自动”。
-
该特定银行的Iris ReportManager服务是否列为已启动。 如果正在运行,它将在列表中显示“IRIS REPORT MANAGER SERVICE”。 如果没有,则单击
IRIS.REPORTMANAGER.EXE
运行它
然后再次重置IIS
-
我知道这张票很旧,但我刚遇到这个问题,我想我会发布发生在我身上的事情,以及我是如何解决它的:
在我的服务中,我打电话给另一个网络服务。 就像一个混蛋,我忘记确保在我发布Web服务时DNS设置是正确的,因此我的Web服务在发布时试图从api.myproductionserver.local而不是api.myproductionserver.com调用。 导致超时的是后端Web服务。
无论如何,我以为我会传递这个。
我有这个问题。 代码在本地运行时工作正常但在服务器上运行时没有。 使用psPing( https://technet.microsoft.com/en-us/sysinternals/psping.aspx )我意识到应用程序端口没有返回任何内容。 原来是一个防火墙问题。 我没有在Windows防火墙中启用我的应用程序端口。
管理工具>具有高级安全性的Windows防火墙将我的应用程序端口添加到入站规则,它开始工作。
不知怎的,应用程序端口号已经改变了,所以花了一段时间来弄清楚发生了什么 – 所以我想我会分享这种可能性,以防它节省别人的时间……
它可能是服务器中的代理设置问题。 您可以尝试禁用代理设置,