Domänenübergreifende GET-Weiterleitung - CSS-Tricks

Anonim

Wenn Sie eine AJAX-Anfrage auf einer Website stellen, muss sich die URL, von der Sie anfordern, in derselben Domain befinden, von der aus die Anfrage gestellt wurde. Dies ist eine vom Browser auferlegte Sicherheitsbeschränkung. Es gibt eine Möglichkeit, dies zu umgehen, indem Sie einen „Mann in der Mitte“ -Ansatz verwenden.

PHP ist eine serverseitige Sprache und kann Inhalte von jeder URL abrufen. So kann eine PHP-Datei zum Mann in der Mitte werden. Der Inhalt der PHP-Datei kann so eingerichtet werden, dass eine URL als Parameter akzeptiert wird und der Inhalt dieser URL zurückgegeben wird.

Damit können wir eine AJAX-Anfrage direkt an diese URL senden und ihr die URL übergeben, von der wir die Daten tatsächlich als Parameter haben möchten. Sehen Sie unten, wie wir "http://google.com" als Daten übergeben.

 $(function() ( $.ajax(( type: "GET", dataType: 'html', data: 'url=http://google.com', url: 'get.php', success: function(data)( // Yah! Do something cool with data ), error: function()( // Boo! Handle the error. ) )); )); 

Dies ist ein äußerst einfaches Beispiel. Wenn Sie an einer robusteren Version interessiert sind, lesen Sie den Simple PHP Proxy.