Cross Domain GET Forwarding - Astuces CSS

Anonim

Lorsque vous effectuez une requête AJAX sur un site Web, l'URL à partir de laquelle vous demandez doit résider sur le même domaine que celui d'où la requête a été effectuée. Il s'agit d'une restriction de sécurité imposée par le navigateur. Il existe un moyen de contourner ce problème en utilisant une approche un peu «homme au milieu».

PHP, étant un langage côté serveur, a la capacité d'extraire du contenu de n'importe quelle URL. Ainsi, un fichier PHP peut devenir l'homme du milieu. Le contenu du fichier PHP peut être configuré pour accepter une URL en tant que paramètre, puis renvoyer le contenu de cette URL.

Avec cela en place, nous pouvons faire une requête AJAX directement à cette URL, en lui passant l'URL dont nous voulons réellement les données en tant que paramètre. Découvrez comment nous transmettons "http://google.com" comme données ci-dessous.

 $(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. ) )); )); 

Ceci est un exemple extrêmement simple. Si vous êtes intéressé par une version plus robuste, consultez le proxy PHP simple.