Salut tout le monde, je travaille sur un widget pour le tableau de bord d'Apple et j'ai rencontré un problème en essayant d'obtenir des données de mon serveur en utilisant la fonction ajax de jquery. Voici mon code javascript:Tableau de bord AJAX interdomaines avec jquery
$.getJSON("http://example.com/getData.php?act=data",function(json) {
$("#devMessage").html(json.message)
if(json.version != version) {
$("#latestVersion").css("color","red")
}
$("#latestVersion").html(json.version)
})
Et le serveur répond avec cette JSON:
{"message":"Hello World","version":"1.0"}
Pour une raison que, quand je lance ce champs sur le widget ne changent pas. À partir du débogage, j'ai appris que le widget ne fait même pas la demande au serveur, donc cela me fait penser qu'Apple a un type de bloc d'URL externe en place. Je sais que cela ne peut pas être vrai, car de nombreux widgets téléphonent à la maison pour vérifier les mises à jour.
Quelqu'un a-t-il une idée de ce qui pourrait être faux?
EDIT: Aussi, ce code fonctionne parfaitement bien dans Safari.
Comme demandé par Luca, voici le code PHP et Javascript qui est en cours d'exécution en ce moment:
PHP:
echo $_GET["callback"].'({"message":"Hello World","version":"1.0"});';
Javascript:
function showBack(event)
{
var front = document.getElementById("front");
var back = document.getElementById("back");
if (window.widget) {
widget.prepareForTransition("ToBack");
}
front.style.display = "none";
back.style.display = "block";
stopTime();
if (window.widget) {
setTimeout('widget.performTransition();', 0);
}
$.getJSON('http://nakedsteve.com/data/the-button.php?callback=?',function(json) {
$("#devMessage").html(json.message)
if(json.version != version) {
$("#latestVersion").css("color","red")
}
$("#latestVersion").html(json.version)
})
}
Un peu en retard d'une réponse, mais ça l'a fait! –