Windows应用商店应用(侧载)和与REST服务的通信

时间:2015-03-11 09:30:03

标签: c# rest windows-store-apps

使用Windows 8.1从平板电脑上的Windows商店应用程序(侧面加载)连接到我的REST Web服务时遇到一些问题。

Web服务在公司服务器上发布,设备属于域,因此两个设备都在同一网络(Intranet)上。我尝试过不同的功能:

  • 仅限'专用网络(客户端和服务器)
  • 具有企业身份验证的专用网络
  • 仅限企业身份验证

我的代码是这样的:

using Windows.Web.Http;

private async Task SendRegistrationData()
        {
            using (var client = new HttpClient())
            {
                var baseAddress = new Uri(@"http://serverName:88/Device/RegisterDevice");
                var msg = new HttpRequestMessage(new HttpMethod("POST"), baseAddress);

                var serializedDevice = JsonConvert.SerializeObject(CurrentDevice.Instance);

                msg.Content = new HttpStringContent(serializedDevice);
                msg.Content.Headers.ContentType = new HttpMediaTypeHeaderValue("application/json");
                client.DefaultRequestHeaders.Add("user-agent", "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)");
                HttpResponseMessage response = null;
                try
                {
                    response = await client.SendRequestAsync(msg);

                    await Logger.LogError("Registration data were sent");
                }
                catch(Exception ex)
                {
                    Logger.LogError("Communication errors", ex, 5);

                    Logger.LogError("HResult: " + ex.HResult.ToString());

                    var tmp = new CustomMessageBox();
                    tmp.ShowMessage("Communication error: " + ex.Message , " Communication error ");
                }
            }
        }

重要的事情!

当我使用“高级休息客户端”(Chrome浏览器插件)从同一设备测试我的网络服务时,一切正常。我的问题只出在我的LOB Windows应用商店应用中。 有什么建议吗?

此致

修改 错误消息:无法与服务器建立连接

HResult:-2147012889

编辑2 刚刚发生的新事物。我安装的小提琴手就像@Jon在最后的评论中所说的那样非常奇怪。

  1. 启动fiddler(无需任何其他配置)

  2. 启动我的Windows应用商店应用,并与网络服务进行通信, 一切正常

  3. 关闭fiddler

  4. Windows应用商店无法与网络服务连接!

  5. 有任何线索吗?

1 个答案:

答案 0 :(得分:0)

我认为这两个功能就足够了:使用Enterprise身份验证的专用网络 - 我错了。

尽管Web服务位于公司服务器上,并且我的Windows设备已添加到公司域,但我必须在Windows应用商店清单文件中设置另一项功能:Internet(客户端)

现在一切正常

此致 马尔钦