2013-10-13 91 views
0

我正在尝试使用GovTrack API。此代码的工作:JSONP不适用于某些链接(jQuery)

$.ajax({ 
    dataType: "jsonp", 
    url: 'http://www.govtrack.us/api/v2/bill/76416?format=jsonp' 
}); 

但是这个代码不:

$.ajax({ 
    dataType: "jsonp", 
    url: 'http://www.govtrack.us/api/v2/bill?format=jsonp' 
}); 

我得到

Failed to load resource: the server responded with a status of 400 (BAD REQUEST) http://www.govtrack.us/api/v2/person?format=jsonp&callback=jQuery110209814499213825911_1381645302221&_=1381645302222 

我猜这是因为_=1381645302222错误请求,但我不”不知道如何解决它。当我去链接他们加载JSON罚款。

回答

1

jQuery是增加一个额外的参数_=xyzhttp://www.govtrack.us/api/v2/bill?format=jsonp&callback=jQuery191010857695830054581_1381645903345&_=1381645903346)请求禁用GET请求

它看起来像那个特定的要求并不像_(高速缓存禁用)参数的缓存。

尝试

$.ajax({ 
    dataType: "jsonp", 
    url: 'http://www.govtrack.us/api/v2/bill?format=jsonp', 
    cache: true 
}).done(function(data){ 
    console.log(data) 
}); 

演示:Fiddle

+0

哇!非常感谢 - 'cache:true'完成了这个诀窍:) – sbl03