API REST conceptos (Rails-api)
-
Upload
daryl-moreno -
Category
Technology
-
view
468 -
download
11
Embed Size (px)
Transcript of API REST conceptos (Rails-api)

API RESTForo de desarrollo móvil UNI RUACS

¿Qué es una API?Aplication Programming Interface
(Interfaz de programación de Aplicaciones)
Servidor
BD
RubyAPI
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 delRecurso

90%De las nuevas API
están basadas en REST


Cliente ServidorRequest
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 = ítemObtener 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 RESTcon Ruby on Rails?

¿Qué es Ruby?
Ruby es un lenguaje deprogramación de guiones(scripts).
Fácil y sencillo de aprender
La sintaxis es simple
Todo es considerado unobjeto.

¿Qué es ruby on rails?
Es un entorno de desarrollo webbasado en Ruby.
Código abierto .
Convención sobre configuración.
Basado en MVC (Modelo, VistaControlador)

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

GeneradoresC:> 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

GeneradoresC:> 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’, ‘rakedb:drop’, ‘rake db:drop’

GRACIAS
@morenodaryl
DARYL MORENO TORREZEstudiante de Ingeniería de Sistemas
| Backend | Frontend |
/morenodaryl
Twitter:
Github: