Maison  >  Article  >  interface Web  >  jquery $.getJSON() requête inter-domaine

jquery $.getJSON() requête inter-domaine

巴扎黑
巴扎黑original
2017-07-03 09:44:33961parcourir

Je n'ai jamais compris ce qui se passait avant, mais maintenant je n'ai plus le choix, alors j'ai lu attentivement la documentation, et finalement le test a réussi. Notez

1, et d'autres requêtes sous le même domaine. le nom peut être le même
js :

Le code est le suivant :

var url="http://localhost:2589/a.ashx"; >$(function() {
$.getJSON(url,function(data){
alert (data.Name);
})
}); >
Le serveur renvoie
String

 :

{"Name":"loogn","Age":23}
2, sous différents noms de domaine js :

code Comme suit :

var url="http://localhost:2589/a.ashx?callback=?";

$(function(){

$. getJSON(url,function(data ){

alert (data.Name);

})
});



Le serveur renvoie une chaîne :

jQuery

1706543070425920333_1324445763158({"Name":"loogn","Age":23})
La chaîne renvoyée est une
fonction appelée "jQuery1706543070425920333_1324445763 158", avec les paramètres est { "Nom": "connexion", "Âge": 23}. En fait, ce nom de fonction long est la fonction de callback=? dans le chemin de la requête. Je pense que cela devrait être comme ceci : La méthode $.getJSON génère une référence
à la méthode de rappel. nom de ? . La requête ci-dessus deviendra http://localhost:2589/a.ashx?callback=jQuery1706543070425920333_1324445763158&_=1324445763194 Le serveur doit la traiter lors du renvoi de json, par exemple :
Le code. est la suivante :

string

cb = context.Request["callback"];

context.Response.Write(cb + "(" + json + ")");


Le nom du paramètre callback peut également être remplacé par jsoncallback. Je pense que c'est par crainte de conflit que jsoncallback doit être détecté en premier, et le callback ne doit pas être détecté à nouveau (non testé !! )
? Il peut également s'agir d'un nom de fonction spécifique, afin que la

fonction de rappel

ne puisse pas être anonyme. Utiliser ? La génération n'est qu'une commodité fournie par jQuery pour nos opérations générales.

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!

Déclaration:
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