No hace mucho, escribí un artículo sobre "La importancia creciente de las API en el desarrollo web". Como seguimiento, hoy cubriré los conceptos básicos del uso de las API web.
Antes de comenzar: este artículo no detalla el proceso de diseño o desarrollo de API. Eso es para un artículo diferente.!
Hay un puñado de principios básicos que deben seguirse cuando se utilizan las API web:
La mayoría de estas pautas se enumeran en los "términos de servicio" de la API para Twitter y Facebook, pero se pueden aplicar a todas las API web..
Hay miles de API web disponibles y la mayoría pueden integrarse en un sitio web o crear un mashup. Algunas API web son bastante simples y requieren habilidades de codificación mínimas para implementar, mientras que otras pueden ser extremadamente complejas y requieren habilidades de programación avanzadas.
El lenguaje de programación que utiliza para integrar una API web en su sitio web depende de cuál le resulte más cómodo. Encontrará que muchas API web, como Flickr y Last.fm, ofrecen herramientas de idioma específicas.
Cada API web tiene términos específicos con respecto a su uso; por lo que es increíblemente importante que los "términos y condiciones" se lean con cuidado. Ellos detallarán muchos aspectos del uso de la API web, incluyendo:
Puede haber información adicional sobre "términos de uso" ubicada en páginas web separadas. Por ejemplo, hay "Pautas de visualización" que se describen en detalle en páginas web separadas para Twitter, Foursquare, LinkedIn y Facebook..
La mayoría de las API web tienen documentación detallada disponible, que generalmente contiene información importante como:
Algunos proveedores de API web recomiendan el uso de un parámetro de versión en la llamada a la API.
Muchos proveedores de API web frecuentemente lanzan nuevas versiones de sus API. Estas nuevas versiones pueden incluir lo siguiente:
Algunos proveedores de API web recomiendan el uso de un parámetro de versión en la llamada a la API. Foursquare, por ejemplo, acepta el parámetro "v = YYYYMMDD" en las llamadas a la API. Este parámetro ayudará a indicar que el cliente está actualizado en la fecha especificada.
Es una buena idea revisar periódicamente el registro de cambios (si existe) cuando se utilizan las API web. Muchas API populares tienen registros de cambios disponibles, como Facebook, Google Maps, Google Charts y Foursquare.
Muchos proveedores de API ofrecen formas adicionales de realizar un seguimiento de sus revisiones de API:
Casi todas las API web están sujetas a límites de tarifas; Algunos proveedores de API incluso cobran tarifas si un usuario supera el límite de tasa de API!
El uso de la mayoría de las API (si no todas) está sujeto a límites de velocidad y cada proveedor de API tiene su propia política de limitación de velocidad de API. Algunos proveedores de API incluso cobran tarifas si un usuario excede el límite de tarifa de API. Google introdujo recientemente una nueva política de limitación de tarifas para el API de Google Maps que incluye tarifas de uso. Google también ha proporcionado detalles adicionales con respecto a los límites de uso de la API de Google Maps en su blog Geo Developers. Aquí hay enlaces para evaluar la información de limitación de algunas de las API más populares:
Es increíblemente importante que no abuses de la API. Si su sitio web está realizando una llamada a la API para cada carga de una sola página, y para cada visitante, pregúntese: "¿Por qué"? Implemente técnicas de almacenamiento en caché adecuadas para mejorar el rendimiento de su sitio web y, potencialmente, ahorrar dinero.
El uso de un "archivo de caché" evitará problemas con el límite de velocidad de API.
El uso de un "archivo de caché" evitará problemas con el límite de velocidad de API. En la publicación de Nettuts + "Cómo crear un widget de Twitter avanzado", hay instrucciones sobre cómo crear una secuencia de comandos de PHP "archivo de caché". Esta secuencia de comandos recupera la información "GET status / user_timeline" de la API de Twitter y la almacena en un archivo "TXT" ubicado en un directorio de caché en el servidor. Este script se puede modificar fácilmente para que funcione con la mayoría de las API. Todo lo que tendría que hacer es cambiar el nombre del archivo txt y la llamada a la API. Tenga en cuenta que la llamada en el script recupera los datos en formato JSON.
Es importante que lea los "términos de uso" de las API para cualquier referencia sobre el uso de archivos de caché. Por ejemplo, la API de publicidad de productos de Amazon tiene restricciones de almacenamiento en caché. Facebook recomienda que, si utiliza el almacenamiento en caché, intente mantener los datos actualizados..
Los dos formatos de datos más populares para las API web son XML y JSON..
Los dos formatos de datos más populares para las API web son XML y JSON; Muchos proveedores ofrecen ambos formatos. Sin embargo, JSON se ha vuelto tan popular entre los desarrolladores web hasta el punto de que algunos proveedores de API, como Foursquare, Twitter y Google+ ofrecen el formato de datos JSON exclusivamente..
Los formatos de datos API se tratan en detalle en una publicación anterior.
La mayoría de los proveedores de API requieren que los usuarios se registren para obtener una cuenta de usuario y / o una clave de API. Por ejemplo, Google solicita a sus usuarios que soliciten una clave de API aquí. Este suele ser un proceso bastante simple y solo debería tomar unos minutos para hacerlo. También se le puede pedir que use un ID de desarrollador / aplicación cuando use una API.
Muchas API requieren el uso de OAuth para una funcionalidad específica de API.
OAuth (Autorización abierta) es un estándar abierto para la autorización que permite a los usuarios compartir datos y / o archivos almacenados en un sitio web con otro sitio web.
Muchas API requieren el uso de OAuth para una funcionalidad específica de la API, como iniciar y cerrar sesión en una aplicación. La API de Google+ requiere que TODAS las llamadas API utilicen un token OAuth 2.0 o una clave API. Google recomienda utilizar OAuth 2.0 como protocolo de autorización para las API de Google. Otros ejemplos de API que requieren el uso de OAuth son LinkedIn, Twitter y Foursquare.
Debe usarse una "llamada" de la API para que la aplicación de su sitio web pueda acceder a una API web. Dependiendo del tipo de aplicación que esté creando, es posible que deba usar varias llamadas a la API. La mayoría de las API se pueden utilizar con una variedad de lenguajes de programación. La llamada puede necesitar ser modificada para diferentes lenguajes de programación. Por ejemplo, en el tutorial, "Cómo crear un widget avanzado de Twitter", se crea un script de PHP "archivo de caché" utilizando la siguiente llamada a la API de Twitter:
http://api.twitter.com/1/statuses/user_timeline/twitter_screen_name.json?count=3&include_rts=true&include_entities=true
Si está utilizando JavaScript o jQuery en lugar de PHP, la llamada deberá cambiarse a:
http://api.twitter.com/1/statuses/user_timeline/envatowebdev.json?count=3&include_rts=true&include_entities=true&callback=?
Cuando se utiliza JavaScript o jQuery, "& callback =?" debe incluirse en la llamada a la API, pero si usa PHP, debe eliminarse o los datos no se generarán en un formato JSON válido.
Hay varias herramientas de prueba de API disponibles para ayudarte a probar tus llamadas a la API:
Si tiene problemas inesperados con una API, algunos proveedores de API como Foursquare y Twitter ofrecen actualizaciones de estado de la plataforma en los blogs de estado..
Facebook ofrece una buena "herramienta de estado en vivo" que incluye:
Gorjeo También tiene una "Página de estado de API" actualizada que incluye:
Las API web son cada vez más importantes en el desarrollo web, y su popularidad y uso han aumentado exponencialmente en los últimos años. Afortunadamente, este artículo ha detallado los conceptos básicos del uso de las API web. Si hay notas adicionales que no he incluido, indíquelas en los comentarios..