Windows 应用商店应用程序 xhr 到 localhost 失败

Windows Store App xhr to localhost fails

本文关键字:localhost 失败 xhr 应用程序 应用 Windows      更新时间:2023-09-26

我有一个Win Store App应用程序,它使用REST与USB连接的pinpad设备进行通信。它有自己的专有http服务器/软件,但它看起来相当简单。

在我的开发机器和测试机器上,一切都按预期工作。但是,在我的测试仪机器上,它没有。问题是 xhr GET 失败了。它只是超时并返回状态 0。

使用浏览器的简单获取是成功的,在浏览器中运行的脚本(即 ff、ch)也是如此。

我已经将xhr换成了httpClient,jquery.ajax和直接XMLhttpRequest调用 - 都有相同的结果。我尝试为 CORS 设置位置标头。尝试了不同的地址格式(localhost,127.0.0.1,192...等)。该应用程序将很乐意获取外部内容(例如 google.com)。

以前有人遇到过这样的事情吗?我怀疑这与Windows应用商店应用程序与局域网的交互方式有关,但我不知道还能在哪里看。

默认情况下,阻止 Windows 应用商店应用与本地主机建立环回连接。默认情况下,Visual Studio 在调试时设置异常,你可以自己设置一个异常,用于测试或使用 checknetisolation 工具为旁加载的应用设置一个异常。如果你的应用将从应用商店部署,则它不能依赖于环回豁免。

请参阅在 MSDN 上的旁加载 Windows 应用商店应用中使用网络环回:

将 Windows 应用商店应用添加到免除以下条件的应用列表中 环回防火墙,运行检查网络隔离环回豁免 -a -n=<包系列名称>来自提升的命令提示符。Windows 应用商店应用的程序包系列名称可从 Visual Studio 获得 通过打包选项卡上的 Package.appxmanifest 编辑器。