内部异常:system.net.sockets.socketexception(0x80004005):连接尝试失败,因为连接的一段时间后连接后没有正确响应,或者已建立的连接失败,因为连接了主人没有响应
背景:此错误来自调用网络服务。当Visual Studio在本地运行时,它可以无需搭便车。当我将此应用程序部署到服务器并击中相同的Web服务时,我会遇到此错误。
我尝试的是:从C#库中创建URI,而不是使用字符串。删除我的WebClient对象的代理属性。在我的Web.config文件中添加一个条目,以绕过一些代理内容。
相关代码:
try
{
var uri = ConfigurationManager.AppSettings["MyUrl"] + "apiAction";
using (var httpClient = new WebClient())
{
httpClient.BaseAddress = uri;
httpClient.Headers.Add("content-type", "application/json; charset=utf-8");
var content = new
{
UserAuthorizationToken = userToken
};
var jsonObj = JsonConvert.SerializeObject(content);
var response = httpClient.UploadString(uri, jsonObj);
}
}
有人可以将我指向正确的方向来解决这个问题吗?预先感谢
编辑(以防止必须在注释中进行挖掘):
URL被验证是正确的。在应用程序中的其他地方,有一些角函数成功访问了相同的方法。因此,我认为不应该有防火墙问题,但目前我有点迷路了,所以我不能自信地说没有。我也可以远程远程访问此服务器
正如梅森(Mason)和迪伦·尼科尔森(Dylan Nicholson)指出的那样,这是防火墙问题。伙计们,我很感激这个方向。