Maison > développement back-end > tutoriel php > Comment surmonter la communication JSON inter-domaines avec JSONP ?

Comment surmonter la communication JSON inter-domaines avec JSONP ?

Mary-Kate Olsen
Libérer: 2024-10-22 14:42:50
original
808 Les gens l'ont consulté

How to Overcome Cross-Domain JSON Communication with JSONP?

JSONP : activation de la communication JSON inter-domaines

La communication JSON inter-domaines pose un défi en raison de la politique de même origine. JSONP (JSON with Padding) a été introduit comme solution à ce problème.

Création d'une API de rappel JSONP

Pour créer une API de rappel JSONP, vous devez :

  1. Accepter un paramètre de rappel : Acceptez un paramètre "callback" dans la requête GET.
  2. Encapsuler les données dans une fonction de rappel : Surround vos données JSON avec la fonction de rappel spécifiée dans le paramètre de requête.

Exemple en PHP :

<code class="php"><?php
$data = '{}';

if (array_key_exists('callback', $_GET)) {
    header('Content-Type: text/javascript; charset=utf8');
    header('Access-Control-Allow-Origin: http://www.example.com/');
    $callback = $_GET['callback'];
    echo $callback . '(' . $data . ');';
} else {
    header('Content-Type: application/json; charset=utf8');
    echo $data;
}
?></code>
Copier après la connexion

Ce code envoie un fichier JavaScript qui appelle le fonction de rappel spécifiée avec les données JSON comme premier argument.

Utilisation du service JSONP

Pour utiliser le service JSONP :

  1. Définissez une fonction de rappel : Créez une fonction JavaScript pour traiter les données JSON.
  2. Incluez le script du service JSONP : Insérez un
    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