5

我正在制作一个应用程序,它基本上只需要将一段 XML 发送到服务器并返回。我遇到了麻烦但是让这个工作并得到非常奇怪的错误

public bool Post(string data)
    {
        string server="http://my-lan-computer:9091/foo"
        bool success = false;
        HttpClient client = new HttpClient();

        try
        {
            client.PostAsync(server, new StringContent(data, Encoding.UTF8, "text/xml")).Wait(); //error here
            success = true;
        } catch { }

        return success;

    }

我发布到的服务器不是本地主机,而是我本地网络上的一台计算机。我得到这个错误深深地嵌套:

innerException: {"An error occurred while sending the request."}

innerException: {"Unable to connect to the remote server"}

innerException: {"An attempt was made to access a socket in a way forbidden by its access permissions 123.123.123.123:9091"}

我的应用程序具有 Internet 客户端功能。我可以通过其他商店应用程序访问我的本地网络和互联网。我可以在 Firefox 中访问资源以获得正确的行为。我没有启用防火墙,也没有阻止这些端口的防病毒软件

什么可能导致这个晦涩的错误?我该如何解决?

4

1 回答 1

14

要访问 LAN,您必须Private Network在应用程序清单中声明该功能。请注意,这与Internet功能不同。

于 2013-01-30T04:04:46.670 回答