我们正在使用PhoneGap开发跨平台应用程序。有一次,它向相对路径发出一个AJAX请求,它在Android和iOS上运行良好,但在Windows Phone上运行良好 - 它得到404响应。绝对URL工作正常。以下代码:
var a = document.createElement('a');
a.setAttribute('href', 'personalData.html');
console.log(a.href);
也会解析为正确的绝对URL。但是,以下内容:
var xhr = new XMLHttpRequest();
xhr.open("GET", "personalData.html", true);
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
console.log(xhr);
}
};
返回404.我想知道发生了什么。有没有办法知道XHR要求的绝对路径?
答案 0 :(得分:0)
在这些情况下,Fiddler Web Debugger是无与伦比的。它会准确地告诉您请求的作用。
它也是works with the Windows Phone emulator。要调试实际设备,请设置FIddler接受外部连接并将Fiddler指定为手机上的代理。 我做了两个场景,工作正常。
试一试。
答案 1 :(得分:0)
XMLHttpRequest是一个由Microsoft设计并由Mozilla,Apple和Google采用的JavaScript对象,与Phonegap无关。
https://developer.mozilla.org/en/DOM/XMLHttpRequest
说这个,你可以尝试使用像Fiddler这样的http代理来查看所有的http流量。
http://www.fiddler2.com/fiddler2/
最好的问候。
答案 2 :(得分:0)
我在我的项目中尝试了你的代码(Phonegap / WinPhone7),在我初始化请求(xhr.send();
)之前,你的代码没有得到任何东西。
我不知道你如何在没有这种方法的情况下提出要求。