mariochavez

mariochavez

Publicado
Marzo 3, 2014

Próximos Eventos

Blog

Crear y consumir API's en Rails

Un par de meses atrás me encontré trabajando en algunos proyectos donde se estaban utilizando API's creadas en Ruby on Rails sin embargo cuando yo me uní a los proyectos estos ya estaban bastante avanzados y yo siempre quise crear una API desde cero y que primero fuera publica y después poder agregar seguridad para que solo ciertos clientes pudieran acceder a la misma. Hola que tal mi nombre Jose Heriberto Perez actualmente trabajo como Software Engineer at Crowd Interactive Ecommerce Consultancy, en esta ocasión vamos a crear una API en Ruby on Rails desde cero que primero será publica y en la cual solo podremos leer y después vamos a agregar seguridad basada en tokens y también podremos crear, eliminar y actualizar registros, para lo cual también vamos a crear una aplicación cliente la cual será una SPA (Sigle Page Application) una aplicación de una sola pagina para que no recargue en ningún momento para lo cual vamos a utilizar las siguiente tecnologías resaltando que utilizaremos el framework de javascript Backbone:

Las tecnologías utilizadas para el cliente serán:

  • HTML
  • CSS
  • Bootstrap
  • Backbone
  • Handlebars
  • JQuery
  • JSONP
  • Responsive
  • Media Queries

Las tecnologías utilizadas para nuestra API en rails(backend) serán:

  • Rails version '4.0.2'
  • Kaminari para paginación
  • JSON format
  • rack-cors
  • Google OAUTH2 para Autenticación

Los repositorios de ejemplo los puedes encontrar en mi cuenta de heridev en github:

Para el cliente esta es la version final que se trabaja hasta el video final en la rama "episodio 7"

https://github.com/heridev/testing-episodes/tree/episode7

Para la parte de la API

https://github.com/heridev/railspublicapi

Sin embargo aprovecho para mencionarles que en este repositorio van a encontrar mucho mas código del que se muestra en los vídeos ya que después de terminar la serie de vídeos yo continúe actualizando este repo para cuestiones personales y requerimientos personales como nivel de privilegios de usuarios, envío de correos utilizando mandril, etcétera sin embargo si quieren ver el código que se creo hasta el "episodio 7" de los vídeos pueden hacer referencia a los commits:

https://github.com/heridev/railspublicapi/commits/master

Hasta el siguiente commit se incluyen los últimos cambios del episodio 7:

'Ensure google client id is set as environment variable' => 1233f526d878a22c84d774c20f5922783178bddf

En caso de que deseen ver solo el código que se trabaja en los videos pueden hacer lo siguiente: git clone git@github.com:heridev/rails_public_api.git luego cambiarse hasta ese commit que les comente git checkout 1233f526d878a22c84d774c20f5922783178bddf

y así podrán ver el código creado hasta el episodio 7, that's it

El curso completo esta divido en 7 vídeos a continuación les comparto los links esperando que les sea de mucha ayuda:

Episodio 1

Episodio 2

Episodio 3

Episodio 4

Episodio 5

Episodio 6

Episodio 7