2010-01-01 39 views
8

Tengo una idea para una aplicación web que sería genial si también tuviera una API pública para que las personas la usen e interactúen con ella. Quiero que las personas puedan crear sus propias aplicaciones móviles y de escritorio que interactúen con la API. Específicamente, quiero crear una aplicación de iPhone que interactúe con la API.¿Cómo crear una API pública usando Zend Framework?

Construiré la aplicación con Zend Framework. Nunca he creado una API, entonces, ¿qué necesito saber sobre la creación de una API usando Zend Framework? Cualquier tutorial o consejo sería apreciado.

Específicamente, me pregunto ... Si decido usar XML o JSON como formato, ¿cómo devuelvo los datos en ese formato para que la aplicación cliente los use?

Actualización: Me di cuenta de que tenía que aprender qué tipo de API quería implementar. REST y RPC son básicamente los dos tipos diferentes de API. REST es el más simple y común, así que he decidido implementar un RESTful API.

Actualización: Aquí están algunos recursos que he recogido hasta el momento:

+0

No estoy seguro de si esto es realmente específico del framework o si la parte de implementación de su pregunta debe al menos dividirse desde los aspectos arquitectónicos. En lo que se refiere a la programación, podría implementar fácilmente algún tipo de API RESTful en ZF, pero es probable que tarde o temprano deba tomar principalmente decisiones arquitectónicas que no estén relacionadas principalmente con el idioma o el entorno que utiliza. – schmitzelburger

+0

RESTO/SOAP ... Realmente no conozco la diferencia, o lo primero sobre las API, así que tal vez conozcas algunos recursos para que comience a entender la arquitectura "independiente del idioma". – Andrew

Respuesta

4

tener un buen vistazo a Mateo Weier O'Phinney de presentation en la arquitectura de aplicaciones Ajax con Zend Framework, probablemente responderá a muchas de tus preguntas

Es difícil hacer recomendaciones específicas, pero crearía dos módulos: uno para la web y otro para la API. Ambos módulos hablarían con una capa de servicio flexible construida sobre los modelos de su dominio que hacen que sea fácil representar sus datos como HTML y cualquier formato de API que elija.

+0

¡esa es una buena presentación! menciona la mayoría de las cosas que me interesan. Ojalá fuera una publicación de blog. No hay mucha explicación detallada, que es probablemente lo que estoy buscando. – Andrew

+0

¡Hay! http://weierophinney.net/matthew/archives/227-Exposing-Service-APIs-via-Zend-Framework.html#extended y http://weierophinney.net/matthew/archives/228-Building-RESTful-Services- with-Zend-Framework.html # extended – Andrew

1

Pruebe este libro, http://aarce.com/resources/ebooks/Pro-Zend-Framework-Techniques.pdf. El Capítulo 9 explica en detalle cómo implementar el servicio web Restful para una aplicación Zend.

+0

* dice * que estás creando un servicio REST, pero en realidad no lo eres. No hay nada de descanso en una URL como esta: 'http: //localhost/Api.php? Method = search & apiKey = test & keywords = zend' – Andrew

Cuestiones relacionadas