我正在尝试从metro应用程序调用Web服务。我正在使用javascript开发应用程序,而web服务是基于wcf的。
我试过这样:
function callWCF() {
WinJS.xhr({
type: "GET",
url: "http://lei-023880-ws.sinternal.de:8732/sdata/myApp/myContract/-/employees",
}).done(
function (result) {
console.log(result.responseText)
},
function (request) {
}
);}
或者像这样:
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://lei-023880-ws.s.de:8732/sdata/myApp/myContract/-/$schema", true);
xhr.responseType = "text";
xhr.onreadystatechange = function () {
if (xhr.readyState == xhr.DONE) {
var blob = xhr.reponse;
window.console.log(blob);
}
}
xhr.send();
所有即时回复都是网络错误代码:2efd。我用Google搜索了一下。它是一个“Internet_cannot_connect” - 错误。当我将网址更改为“microsoft.com”时,它工作正常。所以我想问题在于wcf服务? 在Windows 8浏览器中调用URL时,它也可以工作。 为什么应用无法调用网址?
提前致谢。
robidd
答案 0 :(得分:1)
自microsoft.com工作以来,听起来好像已在清单中设置了互联网连接选项? (不是试图成为明显上尉:),但我已经忽略了几次!)
您可以尝试Fiddler并查看请求的进展情况 - 如果有的话。使用Windows 8的Fiddler很棘手,但是这篇文章可以帮助你进行设置:http://blogs.msdn.com/b/fiddler/archive/2011/09/14/fiddler-and-windows-8-metro-style-applications-https-and-private-network-capabilities.aspx