2009-09-02 10 views
2

Je suis en train de convertir le code suivant pour travailler avec jquery:jquery getJSON IP

var req = new XMLHttpRequest(); 
    req.open('GET', 'http://jsonip.appspot.com', true); 
    req.onreadystatechange = function (e) { 
    if (req.readyState === 4) { 
     if(req.status === 200) { 
     var ip = JSON.parse(req.responseText); 
     alert(ip.address); 
     } else { 
     alert("Error loading page\n"); 
     } 
    } 
    }; 
    req.send(null); 

Ce morceau jquery qui ne fonctionne pas:

$.getJSON("http://jsonip.appspot.com", 
     function(data){ 
      alert("Data Returned: " + data.ip); 

     }); 
+0

Cela ne devrait-il pas être 'data.address'? – seth

+0

data.address ne fonctionne pas – Eeyore

+0

Les deux devraient fonctionner, car le serveur retourne un tableau JSON avec les clés "id" et "address". – rogeriopvl

Répondre

7

Cet hôte prend en charge les rappels personnalisés JSONP, ce qui vous permet d'obtenir le résultat suivant:

$.getJSON("http://jsonip.appspot.com?callback=?", 
    function(data){ 
     alert("Data Returned: " + data.ip); 
    }); 

Vérifiez le code ci-dessus here.

+0

+1 Tu m'as battu dessus! –

+0

Parfait. Je vous remercie. – Eeyore

1

Essayez ceci:

$.getJSON('http://jsonip.appspot.com?callback=?', function(data) { 
    console.log(data.ip); 
}); 
Questions connexes