我想獲得一個JSON,託管在這裏的本地服務器,但由於某種原因它不起作用。如果我在瀏覽器上點擊我的網址,它會正確返回Json,如果我使用另一個網址,我確實會收到一些數據。如何調試ajax請求錯誤?
我原來的getJSON方法:
的getJSON:
$.getJSON(url,
function(data) {
console.log('got something');
alert(data);
});
現在我想看看到底出了什麼問題。我將它重寫爲Ajax請求,並在我的錯誤回調jqxhr給了我很多我不明白的東西。我能獲得關於這個錯誤的更多細節嗎?
TextStatus
值"error"
errorThrown
是null
$.ajax({
url: url,
dataType: 'json',
success: function(data) {
console.log('got something');
alert(data);
},
error: function(jqxhr,textStatus,errorThrown)
{
console.log(jqxhr);
console.log(textStatus);
console.log(errorThrown);
for (key in jqxhr)
alert(key + ":" + jqxhr[key])
for (key2 in textStatus)
alert(key + ":" + textStatus[key])
for (key3 in errorThrown)
alert(key + ":" + errorThrown[key])
//<--- All those logs/alerts, don't say anything helpful, how can I understand what error is going on? ---->
}});
末,json的我應該得到的回覆是
[{"message": "login failed"}]
我不能使用Firebug,鉻控制檯或任何其他開發工具,因爲這是一個使用Phonegap開發的移動應用程序!
是否與當前頁面位於相同域,子域和協議的URL? – devnull69
使用螢火蟲或鉻的開發人員工具,並通過點擊網絡和xhr,你可以看到從url的響應 –
你檢查與Firebug/Fiddler/Chrome開發工具的網絡選項卡,看看是什麼響應代碼和文本? –