Question

Ive été tryin pour résoudre ce depuis longtemps et savent maintenant pourquoi il est pas possible. L'URL

http://twittercounter.com/api/?username=Anand_Dasgupta&output=json&results = 3

retourne un JSON, mais quand j'ajouter un « & rappel = get » avec elle, il ne marche pas préciser la fonction enveloppe de rappel.

La seule solution est maintenant de construire une enveloppe manuellement autour des données JSON.

Ma question est de savoir comment puis-je faire cela. Y at-il un code déjà existant en php / javascript que je peux changer selon mes spécifications.

Un conseil sera apprécié.

Merci

Anand

Était-ce utile?

La solution

Eh bien, le but de JSONP est d'envelopper le JSON (qui sera évalué comme JavaScript côté client) dans un rappel que seul le client qui demande les données sait. Cela empêche le client d'exécuter du code JavaScript indésirable. Sans l'unité d'organisation de rappel aura le même problème de politique d'origine (qui résout JSONP), de sorte que vous ne pouvez demander tot qu'il URL du script est venu.

Fondamentalement, vous devrez joindre le rappel avec PHP, ce qui signifie sur le côté serveur, avec un script proxy. Le script extrait les données de l'autre URL et l'encapsule dans un rappel:

<?php
    // Don't know on the fly how to request data from another URL in PHP, but it's easy to find out
    $response = request_url('http://twittercounter.com/api/?username=Anand%5FDasgupta&output=json&results=3');
    echo $_GET['callback'] . '(' . $response . ')';
?>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top