Frage

Ich versuche, meine Bild-Suche mit Google Ajax-Suche zu machen Ich verwende jQuery. so unter meinem Code

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

die Konsole gedruckt NULL und meine xhr Informationen

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

Ich bin sicher nicht das, was Wongs. helfen Sie mir plz

War es hilfreich?

Lösung

Ihre URL muss eine leichte zwicken Trigger JSONP, fügen &callback=? am Ende, wie folgt aus:

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

Sie können es sehen hier arbeiten, an der Konsole einen Blick darauf werfen.

Wenn jQuery eine callback=? in der URL sieht, ersetzt es mit einem Funktionsnamen erzeugt sie (die Ihr function(data) Rückruf ist), und das ist, was laufen wird, wenn die JSONP Anfrage zurück kommt. Siehe der $.getJSON() Dokumentation für die gleichen Informationen.

Ohne diese es versucht, eine XmlHttpRequest zu tun, und von die Politik gleich Herkunft blockiert , da es auf einer anderen Domäne ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top