我正在嘗試在某些外部JSON電話列表中進行本地測試。即使JSON有效,jQuery JSON parsererror
JSON = https://www.o2.co.uk/shop/homepage/scripts/phoneList.json
我已閱讀在一個單獨的線程,要克服允許起源/跨領域問題,你可以通過「回調=?」到網址的結尾。這似乎工作正常,因爲現在devtools網絡標籤我可以看到文件被拉好。
但是,我從來沒有得到它進入成功回調函數。它始終帶回parsererror。
代碼根據jsonlint.com
如下面的代碼片段是100%有效:
$.ajax({
type: 'GET',
url: 'https://www.o2.co.uk/shop/homepage/scripts/phoneList.json?callback=?',
contentType: 'application/json; charset=utf-8',
cache: true,
dataType:'json',
success: function(response) {
console.log(response);
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(jqXHR);
console.log(textStatus);
console.log(errorThrown);
}
});
任何想法表示歡迎,因爲我很好,真正卡住。
謝謝。
你正試圖在似乎不支持它的資源上使用'jsonp' –
只是通過'callback =?'沒有提出請求跨域服務器端需要支持這樣的響應 –
不完全確定,但從Url返回的JSON是一個數組而不是一個對象 - 這可能會擾亂解析器。 – vogomatix