поиск в Google ajax с помощью jQuery - $ .getJSON (). есть какой-либо ответ - PullRequest
2 голосов
/ 01 сентября 2010

Я пытаюсь выполнить поиск изображений с помощью Google Ajax Я использую JQuery. так ниже моего кода

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

консоль печатная 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

Я не уверен, что вонг. помоги мне плз

1 Ответ

8 голосов
/ 01 сентября 2010

Ваш URL нуждается в небольшой настройке для запуска JSONP, добавьте &callback=? в конце, например:

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

Вы можете увидеть, как это работает здесь , посмотрите наконсоль.

Если jQuery видит callback=? в URL, он заменяет его генерируемым именем функции (которое является вашим function(data) обратным вызовом), и это то, что запускается, когда возвращается запрос JSONP,См. документацию $.getJSON() для той же информации.

Без этого он пытается выполнить запрос XmlHttpRequest и блокируется политикой того же происхождения , поскольку он находится в другом домене.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...