J'ai une demande jQuery JSON, qui charge certains JSON d'un autre serveur (ex foo.com.):jQuery, JSON et problème Apache
$.getJSON("http://foo.com/json.php",function(data) { alert(data); });
Mais je reçois des données nulles. Ce problème n'est pas inter-domaine, j'ai essayé:
$.getJSON("http://twitter.com/users/usejquery.json?callback=?",
function(data) { alert(data); });
et a reçu un objet JSON agréable. Donc, je pense qu'il y a un problème avec backend, Apache 2.2.14. Voici les en-têtes HTTP, envoyés depuis le serveur:
Date: Sun, 07 Mar 2010 16:08:38 GMT
Server: Apache/2.2.14 (CentOS)
X-Powered-By: PHP/5.3.1
Content-Length: 2
Keep-Alive: timeout=15, max=99
Connection: Keep-Alive
Content-Type: application/json; charset=UTF-8
Les en-têtes sont les mêmes dans chaque cas: régulier HTTP demande ou AJAX. Mais je reçois du contenu vide avec AJAX, et du JSON normal avec la demande du navigateur. J'utilise Firebug pour les tests, PHP5 pour former JSON.
Quelqu'un a des idées? Merci!
Lorsque vous dites que les données sont nulles: avez-vous vérifié ce que la requête HTTP renvoie en utilisant la console Firebug? – Pointy
La longueur des données renvoyées est seulement de 2 octets. Donc je suppose quelque chose comme {} ou [], qui pourrait être faux. Etes-vous sûr que votre script renvoie les données correctes? –
Ce n'est pas important: 2 octets ou plus. Vous avez raison, c'est [] caractères. Ce n'est pas important. Quand j'ai dit "null" je veux dire l'affichage d'alerte "null" et la chaîne vide retournée par la console Firebug. –