2013-10-13 4 views
0

Я пытаюсь использовать API GovTrack. Этот код работает: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 добавляет дополнительный параметр _=xyz (http://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

Wow! Большое спасибо - «cache: true» сделал трюк :) – sbl03

Смежные вопросы