2013-07-17 53 views
0

鑑於下面的JavaScrip片段,我得到一個JSON解析錯誤。如果我直接點擊URL,我會得到一個有效的JSON響應(使用http://jsonlint.com/進行驗證)。

如何獲得關於解析錯誤的更多信息?

var purl = 'http://data.police.uk/api/crimes-at-location?date=2012-02&lat=52.629729&lng=-1.131592'; 
$.ajax({ 
    type:'GET', 
    dataType:'jsonp', 
    jsonp:'jsonp', 
    url: purl, 
    success:function(data){ console.log('success',data)}, 
    error:function(e, x, y){console.log('error', e, x, y)} 
}); 

在控制檯中的錯誤是:

error Object {readyState: 4, getResponseHeader: function, getAllResponseHeaders: function, setRequestHeader: function, overrideMimeType: function…} parsererror Error {} 

回答

0

它是有效的JSON,但它不是有效JSONP作爲JSONP應該在回調函數來包裝。

該服務不支持CORS,因此您無法使用ajax獲取JSON,您必須使用服務器端,然後對自己的服務器執行ajax調用,而不是使用相同的源策略阻止您直接獲取JSON。

+0

是的,最後我使用Yahoo Query API –