2011-04-27 2 views
0

J'essaie de créer une API pour mon site web en utilisant PHP, puisque le site est codé en PHP, donc les développeurs peuvent obtenir des informations en utilisant AJAX Requests sur mon serveur, mais comment je peux faire cela?Création d'une API de requête AJAX en utilisant PHP

Mise à jour: Tous les sites où je peux obtenir des exemples?

+0

Peut-être la prise dans ce cas sera meilleure que AJAX. Cependant, si la requête AJAX atteint votre serveur, le serveur renvoie la sortie. Les autres développeurs de sites ont seulement besoin d'analyser la réponse AJAX. – xeranas

Répondre

1

Comme tout traitement de formulaire standard. La différence est que vous revenez généralement JSON au lieu de HTML quand il est une API à utiliser avec des requêtes AJAX:

<?php 
header("Content-Type: application/json"); 
print json_encode(array("sum" => $_GET["a"] + $_GET["b"])); 

Ce serait une API simple d'addition. Ce qui est évidemment un exemple stupide. Cela dépend beaucoup de ce que vous voulez accomplir avec votre API, et des données que votre site gère réellement.

0

Créez une page PHP normale. Seulement, au lieu de retourner le HTML comme une page PHP typique, faites-lui retourner une réponse XML ou JSON.

1

Si vous souhaitez que d'autres développeurs puissent accéder directement à cette page avec une requête Ajax, vous devez définir le contrôle d'accès pour les demandes intersites. Vous pouvez lire ici:

http://www.w3.org/TR/2008/WD-access-control-20080912/

php:

header('Access-Control-Allow-Origin: *'); 

Ensuite, vous devez décider comment vous envoyez vos données (XML, JSON, CSV, etc.) et définir ce que Content- Tapez votre en-tête. Je recommande JSON car il est facile à manipuler avec PHP et JavaScript. Le reste est comme toutes les autres pages que vous publiez dans le monde.

php:

header("Content-Type: application/json"); 
0

Je sais que je suis quelques années trop tard, mais nous espérons que cela aiderai quelques autres gens. J'ai mis en place une structure api javascript-to-php simple qui vous permet de faire des requêtes api simples et empêche le public d'exposer le code pour votre backend. Vous pouvez le trouver here