jQuery-Get-Request auf der URL HTTP
ich habe vor kurzem versucht, einige zu bekommen, Antwort von einer URL mithilfe von jQuery. Daher kopierte ich eine get-Anfrage, Probe der jQuery-API-Get-Anforderung Tutorial in meinem Projekt und habe versucht zu laufen, aber meine debugging-Meldungen zeigte mir, dass es nicht weiter gehen kann. Ich habe versucht, das javascript-Ajax-Bibliothek, die mit einer einfachen Anfrage, aber es hat nicht funktioniert.
Daher bitte ich Sie, wenn Sie könnten mir irgendwie helfen.
Und das ist alles, was ich tun, aber es gibt keine Antwort.
var url = "http://www.google.com";
$.get(url, function(data){
alert("Data Loaded: " + data);
});
Habe ich wahrscheinlich vergessen, um einen ajax oder jQuery-Bibliothek. Zum besseren Verständnis, ich habe c und obj-c experince, das ist, warum ich denke, dass eine Bibliothek fehlt.
In jeder Probe gibt es nur einen kurzen url, wie "test.php". Ist meine komplette HTTP-url falsch?
Dank für Eure Antworten im Voraus.
Br
Nic
InformationsquelleAutor NicTesla | 2011-05-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich ein Beispiel-Szenario, um Ihnen den Einstieg:
Dieser ist wahrscheinlich am besten zu umfassen, die in einer externen JS-Datei:
Vielen Dank!! Nach der überprüfung mehrere Möglichkeiten, die ich nahm, dass man Sie erwähnt. Für alle anderen, die gerne etwas mehr Lösungen verwenden einen Proxy (wie andere hier gezeigt haben, mit PHP oder YQL, das ist eine Yahoo-Proxy, oder wenn Sie einen Kater, Sie können schreiben, ein proxy, indem Sie Ihre eigenen), oder verwenden Sie script-tags, wie die Lösung habe ich gewählt. Ich brauchte es für meine bachelor-Arbeit und vielen Dank an Euch alle!!! BR
Kein problem, froh, dass ich helfen konnte!
InformationsquelleAutor Oliver Spryn
Sie schlagen die Same-Origin-Policy Hinblick auf die ajax-Anfragen.
In einer nussschale, JS/Ajax ist standardmäßig dürfen nur Feuer-Anfragen auf der gleichen Domäne wie die HTML-Seite bedient worden. Wenn Sie beabsichtigen, Feuer-Anfragen auf andere domains, es unterstützt, hat JSONP und/oder zum einstellen der
Access Control
- Header, um es zu bekommen, um zu arbeiten. Wenn das nicht eine option, dann müssen Sie erstellen Sie einige proxy auf der server-Seite und verwenden Sie es anstelle (vorsichtig sein, da man gesperrt werden kann leechen zu viel von anderen Seiten mittels Roboter).Ja, erstellen Sie einen proxy-selbst mit der server-side-Sprache. Im Grunde lassen Sie Ihre server-Anfrage eine URL und die Rückgabe der Antwort. Dann kann man ajax verwenden, um eine Verbindung zu Ihrem server. In zum Beispiel PHP, die Sie verwenden können
curl()
. Lassen Sie es nehmen Sie einen URL als parameter request und echo dercurl()
Ergebnis der Reaktion. Seien Sie vorsichtig mit dieser, obwohl! Abhängig von der Politik, anderen Websites berechtigt sind, zu verbieten, Ihre server-IP-Verbindung, um Sie in seltsame Muster. Besser wäre zu schauen, wenn der host nicht über eine öffentliche ajax-api. Google hat mehrere öffentliche ajax APIs.ok, und wie würden Sie tun dies in javascript?
Ändern Sie einfach die URL zu Ihrem server. E. g.
$.get('leech.php?url=' + encodeURIComponent('http://www.google.com'))
. Aber noch besser ist die Verwendung der öffentlichen ajax-API von Google (oder was auch immer host, den Sie anschließen möchten). E. g.http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=your+search+term
ok, danke dir und aleksv meinen Tag gerettet!!! Dank
InformationsquelleAutor BalusC
Wie schon andere gesagt haben Sie können nicht auf Dateien auf einem anderen server. Es gibt einen hack, tho. Wenn Sie eine server-side-Sprache (ich nehme an, Sie sind), können Sie einfach etwas wie:
http://myserver.com/google.php:
http://myserver.com/myscript.js
Funktionieren sollte!
InformationsquelleAutor user400908
kann man einfach auf Seiten zugreifen, die von Ihrer domain/server
nur wenn die url auf dem gleichen server wie das script. Sie könnten verlangen, eine php-Seite vom server liest die URL, die Sie brauchen.
wie würden Sie führen Sie eine http-Anforderung für excample google mit javascript?
ändern Sie Ihre "var url =" eine php-Datei auf dem server abgelegt. dann Lesen Sie die Seite mit curl oder etwas ähnliches
wie ich schon mentiond, Sie auch meinen Tag gerettet, danke alot!!!
InformationsquelleAutor user489872