用jQuery搜索google ajax - $ .getJSON().有任何回应

Dae*_*KIM 2 javascript ajax jquery google-ajax-search-api

我正在尝试用google ajax搜索我的图像搜索我正在使用jQuery.所以低于我的代码

$.getJSON('http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=hello', function(data) {
    console.log(data);
});
Run Code Online (Sandbox Code Playgroud)

控制台打印NULL并且我的xhr信息是

request URL:http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=hello
Request Headers
Accept:application/json, text/javascript, */*
Cache-Control:max-age=0
Origin:http://example.local
Referer:http://example.local/thread/create
User-Agent:Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_4; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.127 Safari/533.4
Run Code Online (Sandbox Code Playgroud)

我不确定是什么.帮帮我

Nic*_*ver 8

您的URL需要稍微调整才能触发JSONP,最后添加&callback=?,如下所示:

$.getJSON('http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=hello&callback=?', function(data) {
  console.log(data);
});
Run Code Online (Sandbox Code Playgroud)

你可以看到它在这里工作,看看控制台.

如果jQuery callback=?在url中看到a ,它会用它生成的函数名称(这是你的function(data)回调)替换它,这就是JSONP请求返回时运行的内容.请参阅$.getJSON()文档为同一信息.

如果没有这个,它会尝试执行XmlHttpRequest,并被同源策略阻止,因为它在另一个域上.