我有一个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商店应用程序如何与局域网交互有关,但我不知道还有什么要看。
答案 0 :(得分:0)
默认情况下,Windows应用商店应用会被阻止与localhost的环回连接。默认情况下,Visual Studio在调试时设置异常,您可以使用checknetislation工具自行设置一个用于测试或侧载应用程序。如果您的应用程序将从商店部署,则不能依赖环回免除。
请参阅MSDN上的Using network loopback in side-loaded Windows Store apps:
将Windows应用商店应用添加到免除的应用列表中 环回防火墙,运行 checknetisolation loopbackexempt -a -n = < 包系列名称>从提升的命令提示符。 Visual Studio提供了Windows应用商店应用的软件包系列名称 通过打包选项卡上的Package.appxmanifest编辑器。