API RESTForo de desarrollo móvil UNI RUACS
¿Qué es una API?
Aplication Programming Interface
(Interfaz de programación de Aplicaciones)
Servidor
BD
Ruby
API
Cliente Servidor
¿Qué es una API?
Aplication Programming Interface
Es un conjunto de servicios y funciones
que nos permiten comunicarnos con
otras aplicaciones.
Cliente
REST
REpresentational State
Transfer (Transferencia de
Representación de Estado)
Es un tipo de arquitectura de
desarrollo web que se apoya
totalmente en el estándar
HTTP basado en recursos.
Principios REST
•Cliente / Servidor
•Sin estado
•Puede ser “Cacheable”
•Basado en Recursos
Recursos
URL = HTTP, Nombre del Host, URI
http://www.mistareas.com/tareas
Identificador del
Recurso
90%De las nuevas API
están basadas en REST
Cliente Servidor
Request
Response
API Recursos
Servidor
Tareas
JSON, XML
Cliente
JSON XML
Tipos de Respuestas
GET
REST utiliza verbos HTTP
Ver Recursos
POST
REST utiliza verbos HTTP
Crear Recursos
PUT/PATCH
REST utiliza verbos HTTP
Actualizar Recursos
DELETE
REST utiliza verbos HTTP
Eliminar Recursos
Recursos y verbos HTTP
URI HTTP Acción
/Tareas GET Ver Todos
/Tareas POST Crear
/Tareas/1 GET Ver uno
/Tareas/1 PUT/PATCH Actualizar
/Tareas/1 DELETE Borrar
Orden lógico
GET /personas/1/mascotas
Obtener las mascotas de la persona con el id 1
GET /personas/1/mascotas/1 = ítem
Obtener la mascota con id 1 de la persona con id 1
Estados HTTP
(1XX) INFO
(2XX) SUCCESS
(3XX) REDIRECTION
(4XX) CLIENT ERROR
(5XX) SERVER ERROR
¿Cómo hacer una API REST
con Ruby on Rails?
¿Qué es Ruby?
Ruby es un lenguaje de
programación de guiones
(scripts).
Fácil y sencillo de aprender
La sintaxis es simple
Todo es considerado un
objeto.
¿Qué es ruby on rails?
Es un entorno de desarrollo web
basado en Ruby.
Código abierto .
Convención sobre configuración.
Basado en MVC (Modelo, Vista
Controlador)
Herramientas a utilizar
•Ruby on Rails
•Editor de texto (Sublime Text)
•Consola o Terminal
•Navegador Web (Chrome, Firefox)
•Postman (Extensión de chrome)
http://railsinstaller.org/en
http://railsinstaller.org/en
Consola CMD
gem install rails-api
Consola CMD
Iniciamos un proyecto de Rails
rails-api new nombre_proyecto
Entramos a la carpeta del proyecto
Generadores
C:> rails new nombre_proyecto
C:> rails g controller nombre crear borrar …
C:> rails g model post titulo:string estado:integer …
C:> rails g scaffold post titulo:string estado:boolean
↑ Genera un nuevo proyecto de rails
Genera un controlador ↑ nombre y ↑ acciones
Genera un modelo ↑ nombre y ↑ campos de base de datos
Genera modelo, controlador y vistas con sus
acciones CRUD de manera automatica
Generadores
C:> rails server
C:> rails console
C:> rake db:migrate
Corre el servidor de rails, ‘rails s’ hace lo mismo
Nos permite interactuar con la aplicación desde la consola
Hace una migración a la base de datos también
están las opciones ‘rake db:rollback’, ‘rake
db:drop’, ‘rake db:drop’
GRACIAS
@morenodaryl
DARYL MORENO TORREZ
Estudiante de Ingeniería de Sistemas
| Backend | Frontend |
/morenodaryl
Twitter:
Github:

API REST conceptos (Rails-api)