Donc, je veux écrire une API de repos dans PHP pour JSON pour la consommation sur l'iPhone, mais aussi beaucoup de sites Web et d'appareils. J'ai le code ci-dessous, lors de votre accès via une instruction GET, renvoie un fichier comme:
1mdi2o3.parpart p>
Comment puis-je retourner quelque chose comme: users.json p>
3 Réponses :
Bienvenue à. Avez-vous envisagé d'utiliser le Zend Framework pour cette application? J'ai écrit sur ce sujet avant A>, et si vous utilisez Zend, je pourrais probablement être d'aide supplémentaire. Cela vous aiderait certainement à vous procurer les bases. P>
hth, p>
-aj p>
Désolé, mais "Utiliser Zend" semble être un peu excédant pour résoudre un simple problème comme celui-ci ...
@WIM, l'OP semble développer son propre serveur de repos et je me faisais simplement souligner une alternative pour réinventer la roue. Btw, vois mon commentaire sur votre i> réponse.
Vous avez raison, cela peut être utile pour lui. Mais si cela peut être résolu dans 10 lignes, je suis toujours hésitant à ajouter d'abord quelque 10 000 lignes de cadre ;-)
Le problème est la suivante:
header("Content-type: application/json");
@Wim, ne serait-ce pas textuel / json?
Je venais juste citer l'op ici. Application / JSON CODE> Est-ce que je pense que je pense. Peut-être avec
text / json code> Vous pouvez tromper le navigateur dans l'affichage en tant que texte brut, mais dans ce cas
text / simple code> serait équivalent je suppose.
Selon Stackoverflow.com/questions/477816/Le-right -Json-Content-Ty PE Application / JSON code> est la meilleure option.
En outre, j'utilise text / json code> et n'a pas de problème sur IE6-8, FF3 et Chrome, mais je ne sais pas sur webkit truc comme l'iPhone.
C'était exactement ce que je cherchais, simple. Merci.
Vous devriez vraiment utiliser le type MIME approprié et le texte / la nature n'est pas. J'utilise Firebug dans Firefox pour tester mes services Web JSON et utiliser console.log pour me montrer les données JSON. C'est un excellent moyen de vérifier que cela fonctionne correctement. Vous constaterez que certains systèmes souhaitent le type de mime approprié ou qu'ils rejettent les données.
Pas tout à fait de ce que votre objectif n'est pas tout à fait de votre objectif, mais voici 3 à 4 solutions qui pourraient fonctionner:
C'est probablement la manière la plus conventionnelle d'obtenir URIS propre pour votre API. Si vous souhaitez que la partie utilisateur de l'utilisateur.json soit dynamique, vous pouvez utiliser MOD_REWRITE (à nouveau en supposant Apache) pour réécrire vos URL à un script de gestionnaire PHP. Si vous allez l'URL de style reposant conventionnel, vous voudrez probablement l'utiliser de toute façon pour atteindre des URL propres où repose-t-il .php est votre script de gestionnaire PHP. p> Si vous ne voulez pas utiliser mod_rewrite, vous pouvez également faire quelque chose comme p> / code> des URL séparées. P>
Réécriture d'URL sans mod-réécrit h3>
AddHandler application/x-httpd-php .json
Pouvez-vous montrer un exemple en direct? Le code semble ok.