【发布时间】:2012-09-07 06:48:29
【问题描述】:
我有一个奇怪的问题,我正在尝试从网络计算机中检索 XML 字符串,当我在自己的网络之外时它可以工作,但是当我在同一个网络上时,我会遇到以下异常:
+ $exception {"Unable to connect to the remote server"} System.Exception {System.Net.WebException}
An attempt was made to access a socket in a way forbidden by its access permissions 192.168.2.214:8080
我使用的代码是:
Uri URL = new Uri(SabURL + QueueStatusURL + API);
string myURL = URL.AbsolutePath;
var xmlResults = XDocument.Load(URL.OriginalString.ToString());
奇怪的是,当我运行 Fiddler4 时它工作得很好,Fiddler 做了什么让它开始工作?这是某种代理问题吗?如果是,我将如何处理?
【问题讨论】:
-
如果你在浏览器中复制粘贴
URL.OriginalString.ToString(),你会看到XML吗? -
我假设您检查过,所有 URL 都是正确的,所以我会查看是否为您的系统配置了代理(可能是自动代理)或者 Fiddler 是否链接了代理(请参阅帮助Fiddler 窗口),如果它链接一个,您可以检查您的应用程序是否使用该代理(例如使用 NetMon 并检查目标 IP)
-
我可以直接访问 URL,并在 IE/Chrome 中获得 XML 输出,就像我说的那样,如果我在网络之外并且我将我的机器定位在家里,它工作得很好,所以在那里是我家庭网络某处的问题,但我不知道是什么
-
我也遇到了同样的问题;但我发现只有在使用本地 IP 地址(192.x.x.x)时才会引发异常。当我使用公共 ip(指向同一个站点)对其进行测试时,我得到了同样的异常。
-
同样的交易,我的应用程序要同时使用本地和远程端点:|
标签: c# .net microsoft-metro fiddler .net-4.5