Maison > développement back-end > tutoriel php > Comment jQuery et PHP peuvent-ils faciliter les requêtes cross-origine à l'aide de JSONP ?

Comment jQuery et PHP peuvent-ils faciliter les requêtes cross-origine à l'aide de JSONP ?

Linda Hamilton
Libérer: 2024-12-04 19:56:12
original
172 Les gens l'ont consulté

How Can jQuery and PHP Facilitate Cross-Origin Requests Using JSONP?

Demande d'origine croisée avec JSONP : un simple jQuery, exemple PHP

Lorsque vous traitez les limitations imposées par la politique de même origine, JSONP apparaît comme une solution efficace pour les requêtes cross-origin. Cette technique vous permet de récupérer des données à partir de sources externes tout en évitant les potentielles failles de sécurité.

jQuery et JSONP

Pour lancer une requête JSONP à l'aide de jQuery, vous pouvez utiliser le Méthode $.getJSON. Cette méthode déclenche automatiquement une requête JSONP, comme démontré dans l'extrait de code suivant :

$.getJSON('http://www.example.com/jsonp.php', {firstname: 'Jeff'}, function(res) {
    alert('Your name is ' + res.fullname);
});
Copier après la connexion

PHP et JSONP

Côté serveur, PHP sert de point de terminaison pour gérer la requête JSONP. La méthode $.getJSON ajoute un paramètre de rappel à la chaîne de requête URL, qui est ensuite traitée par le script PHP. Le script renvoie la réponse enveloppée dans la fonction de rappel, comme indiqué ici :

<?php
$fname = $_GET['firstname'];
if ($fname == 'Jeff') {
    echo $_GET['callback'] . '(' . "{'fullname': 'Jeff Hansen'}" . ')';
}
?>
Copier après la connexion

Notez l'utilisation de $_GET['callback'] et la syntaxe JSONP appropriée dans la construction de la réponse. Cela garantit que la fonction de rappel fournie par le client est utilisée pour encapsuler la réponse.

Gestion des résultats HTML

Bien que l'exemple fourni illustre principalement l'échange de données JSON, il convient de noter que JSONP peut également être utilisé pour transmettre du contenu HTML. Pour cela, assurez-vous simplement que le script PHP encapsule le code HTML dans la fonction de rappel et l'envoie en réponse. Le JavaScript côté client peut ensuite analyser et restituer le HTML selon les besoins.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal