簡體   English   中英

JQuery 1.7中的JSONP錯誤

[英]JSONP error in JQuery 1.7

注意 :我已經檢查了其他答案,包括以下問題:re-jQuery 1.5之前的JSONP錯誤問題,現已解決 我正在使用JQuery 1.7,我相信它不會遇到此問題。

JQuery 1.5開始,JSONP可以使用適當的錯誤功能 (請參見“ jqXHR對象”)。 但是,錯誤函數似乎並未觸發。

$.getJSON(url, function(response) { 
    console.log(response)   
}).error( function() { console.log('Error occurred.') } )   

查看Chrome開發者工具,JSONP請求生成以下錯誤:

GET https://twitter.com/status/user_timeline/somepretendusername.json?count=2&callback=jQuery171005595548846758902_1334772179012&_=1334772179132 400 (Bad Request)

但是,.error()回調似乎根本沒有運行。 我需要什么才能使用JSONP進行正確的錯誤處理?

錯誤功能僅在請求存在錯誤時觸發。 正在發出請求,但如果用戶名不存在,Twitter將返回400。 我使用偽造的用戶名進行了嘗試,得到了與您相同的響應,但是后來我使用了我的用戶名,它像冠軍一樣工作。

[edit]我看到您只是在問如何使用JSONP處理錯誤。 無論出於什么原因,看來jQuery對此都沒有很好的錯誤處理能力。 我確實找到了一個承諾對JSONP進行實際錯誤處理的插件。 在這里查看

[edit2]簽出來,行得通!

$(document).ready(function() {
    var url = 'https://twitter.com/status/user_timeline/thisisnotarealtwitterhandle.json?count=2&callback=?';
    var jqxhr = $.jsonp({
        url: url,
        success: function(response) {
            console.log(response)
        }
    }).fail(function() { console.log('error'); });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM