2011-11-07 3 views
0

Je travaille actuellement sur une application mobile pour le moment. Utilisation de PhoneGap 1.1.0 sur un iPhone 5 iOS 4.Récupérer des données JSON/JSONp à partir d'un fichier PHP sur un serveur externe via XUI sur une application PhoneGap?

Certaines des bases fonctionnent. Je n'ai pas travaillé dessus longtemps et maintenant je dois pouvoir obtenir quelques données de JSON d'un serveur externe sur le Web. J'utilise le framework javascript XUI plutôt que le jQuery à cause de la taille du fichier. XUI est un bon petit framework JavaScript mais manque de documentation.

Je veux saisir les données en utilisant une requête XHR. Mais pour une raison quelconque, je suis maintenant incapable d'accéder aux données (j'ai déjà eu la demande de travail mais été hors du projet pendant un certain temps et je ne sais pas ce qui se passe donc à la recherche de quelqu'un pour aider) et je ne sais pas pourquoi.

La demande est inférieure à (juste demander des données du twitter api actuellement):

x$('#button').touchstart(function(e) { 
      x$('#test').xhr('https://twitter.com/status/user_timeline/MY_TWITTERNAME.json?count=10&callback=?t', { 
        async: true, 
        method: 'post', 
        callback: function() { 
         alert("The response is " + this.responseText); 
        } 
      }); 
}); 

La DIV « #test » est juste un DIV en blanc mais je ne suis pas sûr si un DIV doit être déclarée dans ce sélecteur.

J'ai également défini les hôtes externes dans PhoneGap.plist pour inclure le domaine 'www.twitter.com'.

Toute aide serait grandement appréciée car je ne peux pas voir où je vais mal.

+1

Avoir travaillé. Je posterai la réponse dans 8 heures quand je serai capable de répondre moi-même à la question. –

Répondre

2

J'ai commencé à travailler. Léger problème dans mon fichier PhoneGap.plist.

Mon code de fichier que j'utilisé pour appeler le serveur était:

x$('#button').touchstart(function(e) { 
       x$().xhr('http://www.url.co.uk/Mobile/test.php', 
        function(){ 
         alert(this.responseText); 
        } 
       ); 
}); 

Had pour vous assurer que l'URL était correcte et complète, y compris 'http: //'.

Je suis ensuite allé m'assurer que mon PhoneGap.plist était correct. J'ai essayé quelques changements différents, puis j'ai trouvé la faute en faisant une barre oblique à la fin de l'url ('www.myurl.com/').

Si vous utilisez PhoneGap 1.1.0, vous devez nommer les domaines externes auxquels vous accéderez dans PhoneGap.plist. Ceux-ci doivent être nommés dans la section "Hôtes externes" et lors de la spécification de votre domaine d'hôtes, il doit simplement être au format suivant "www.domainname.com" et ne pas inclure "http: //".

J'espère que cela aide quelqu'un d'autre.

+0

Fonctionne également sur PhoneGap 1.2.0 –

Questions connexes