Maison > interface Web > js tutoriel > Trois façons dont jQuery utilise JSONP pour obtenir des données inter-domaines

Trois façons dont jQuery utilise JSONP pour obtenir des données inter-domaines

小云云
Libérer: 2018-05-23 09:22:13
original
4416 Les gens l'ont consulté

Cet article présente principalement les trois méthodes de jQuery utilisant JSONP pour réaliser l'acquisition de données inter-domaines. Il compare et analyse également trois techniques de fonctionnement courantes de l'acquisition de données inter-domaines jsonp sous forme d'exemples. à cela. J'espère que cela pourra aider tout le monde.

La première méthode consiste à définir le dataType sur 'jsonp' dans la fonction ajax

$.ajax({
  dataType: 'jsonp',
  url: 'http://www.a.com/user?id=123',
  success: function(data){
    //处理data数据
  }
});
Copier après la connexion

Le deuxième méthode La première méthode consiste à utiliser getJSON, ajoutez simplement le paramètre callback=? à l'adresse

$.getJSON('http://www.a.com/user?id=123&callback=?', function(data){
  //处理data数据
});
Copier après la connexion

La troisième méthode consiste à utiliser la méthode getScript

//此时也可以在函数外定义foo方法
function foo(data){
  //处理data数据
}
$.getScript('http://www.a.com/user?id=123&callback=foo');
Copier après la connexion

Exemple de procédure pas à pas :

index.html

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>jsonp</title>
<script src="jquery-1.8.0.min.js"></script>
<script>
  $.ajax({
    type : "post",
    url : "jsonp.php?name=zhaoxiace&age=30",
    dataType : "jsonp",
    jsonp: "callbackParam",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(默认为:callback)
    jsonpCallback:"callbackFunction",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名
    success : function(data){
      console.log(data.statusCode + "/" + data.message + "/" + data.name + "/" + data.age);
    },
    error:function(){
      alert(&#39;请求失败&#39;);
    }
  });
</script>
</head>
Copier après la connexion

jsonp. php

<?
$data["age"] = $_GET[&#39;age&#39;];
$data["name"] = $_GET[&#39;name&#39;];
$data["statusCode"]="200";
$data["message"]="成功";
$tmp= json_encode($data); //json数据
echo $callback . &#39;(&#39; . $tmp .&#39;)&#39;; //返回格式,必需
?>
Copier après la connexion

Recommandations associées :

Comment effectuer une communication interdomaine en html5

jQuery Jsonp cross- Exemple de moteur de recherche de simulation de domaine Partager

Native JS implémente les requêtes ajax et ajax inter-domaines

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!

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal