2011-12-11 59 views
2

我有这样一段代码:为什么jQuery追加东西到我的AJAX请求的末尾?

$.getJSON('http://domai.nr/api/json/search?q='+encodeURI(d.val())+'&callback=?','',function(data){...}); 

但是我看到这在我的谷歌浏览器的控制台:

GET http://domai.nr/api/json/search?q=google.com&callback=jQuery162020250764419324696_1323616418227&_=1323616456577 500 (Internal Server Error) 
+1

因为你在编码uri ...而那个url + uri没有被发现是服务器.. – comu

+0

'_ = ...'是因为JSONP默认设置了'cache:false'。 – pimvdb

回答

5

callback=?整个的一点是,jQuery将产生伪随机的唯一函数名称并用它替换问号。

否则,您可能会因使用JSON-P请求获得竞争条件。

相关问题