0

你好朋友,我正在从 Windows 8 Store 应用程序调用 1 个休息服务,该服务托管在返回 JSon 数据的 wamp 服务器上。当我从浏览器输入该 URL 时,它会显示正确的 JSON 数据,但每当我尝试通过代码调用时使用 HttpClient,它会抛出异常“ An attempt was made to access a socket in a way forbidden by its access permissions 192.168.2.161:8080

堆栈跟踪:在 System.Net.ServicePoint.ConnectSocketInternal 的 System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult) 处(布尔连接失败,套接字 s4,套接字 s6,套接字和套接字,IPAddress 和地址,ConnectSocketState 状态,IAsyncResult asyncResult,异常和异常)

           try
        {
            HttpClient http = new System.Net.Http.HttpClient();
            HttpResponseMessage response = await http.GetAsync("http://192.168.2.161:8080/Demo/?q=lgwebservice/Demo-Services");

            string res = response.Content.ToString();
        }
        catch(Exception ex)
        {}
4

1 回答 1

3

我意识到这是一个老问题,但我最近遇到了这个问题,所以我认为发布答案会有所帮助。

您可能已经注意到您可以访问外部 IP,但由于您在本地网络上工作,您需要在应用清单中启用此“功能”。

  • 从解决方案资源管理器中打开 Package.appxmanifest
  • 选择功能选项卡。
  • 检查“私有网络(客户端和服务器)

在这一点上你应该很高兴。

于 2013-09-23T17:45:31.840 回答