SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
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:

Contenu connexe

Tendances

SOAP y Web Services
SOAP y Web ServicesSOAP y Web Services
SOAP y Web Services
edmodi
 
Dispositivos de networking
Dispositivos de networkingDispositivos de networking
Dispositivos de networking
Yimmy Bernal
 
Introduction to xampp
Introduction to xamppIntroduction to xampp
Introduction to xampp
Jin Castor
 

Tendances (20)

Construye tu propio backend y api rest con java
Construye tu propio backend y api rest con javaConstruye tu propio backend y api rest con java
Construye tu propio backend y api rest con java
 
REST-API introduction for developers
REST-API introduction for developersREST-API introduction for developers
REST-API introduction for developers
 
SOAP y Web Services
SOAP y Web ServicesSOAP y Web Services
SOAP y Web Services
 
Introducing Swagger
Introducing SwaggerIntroducing Swagger
Introducing Swagger
 
Dispositivos de networking
Dispositivos de networkingDispositivos de networking
Dispositivos de networking
 
[112]rest에서 graph ql과 relay로 갈아타기 이정우
[112]rest에서 graph ql과 relay로 갈아타기 이정우[112]rest에서 graph ql과 relay로 갈아타기 이정우
[112]rest에서 graph ql과 relay로 갈아타기 이정우
 
UserParameter vs Zabbix Sender - 2º ZABBIX MEETUP DO INTERIOR-SP
UserParameter vs Zabbix Sender - 2º ZABBIX MEETUP DO INTERIOR-SPUserParameter vs Zabbix Sender - 2º ZABBIX MEETUP DO INTERIOR-SP
UserParameter vs Zabbix Sender - 2º ZABBIX MEETUP DO INTERIOR-SP
 
Rest API
Rest APIRest API
Rest API
 
RESTful Web Services
RESTful Web ServicesRESTful Web Services
RESTful Web Services
 
Xhtml
XhtmlXhtml
Xhtml
 
Web Services - WSDL
Web Services - WSDLWeb Services - WSDL
Web Services - WSDL
 
Understanding REST APIs in 5 Simple Steps
Understanding REST APIs in 5 Simple StepsUnderstanding REST APIs in 5 Simple Steps
Understanding REST APIs in 5 Simple Steps
 
What is REST API? REST API Concepts and Examples | Edureka
What is REST API? REST API Concepts and Examples | EdurekaWhat is REST API? REST API Concepts and Examples | Edureka
What is REST API? REST API Concepts and Examples | Edureka
 
GraphQL
GraphQLGraphQL
GraphQL
 
NodeJS
NodeJSNodeJS
NodeJS
 
An Introduction To REST API
An Introduction To REST APIAn Introduction To REST API
An Introduction To REST API
 
Ajax
AjaxAjax
Ajax
 
Servidor web apache
Servidor web apache Servidor web apache
Servidor web apache
 
Introducción a php
Introducción a phpIntroducción a php
Introducción a php
 
Introduction to xampp
Introduction to xamppIntroduction to xampp
Introduction to xampp
 

En vedette

Ofimàtica evelyn palacios
Ofimàtica evelyn palaciosOfimàtica evelyn palacios
Ofimàtica evelyn palacios
EvelynPalaciosN
 

En vedette (18)

LG_Hamburg_Kundenanschreiben_Verfügung_Anlagen_Antragsschrift.pdf
LG_Hamburg_Kundenanschreiben_Verfügung_Anlagen_Antragsschrift.pdfLG_Hamburg_Kundenanschreiben_Verfügung_Anlagen_Antragsschrift.pdf
LG_Hamburg_Kundenanschreiben_Verfügung_Anlagen_Antragsschrift.pdf
 
Ofimàtica evelyn palacios
Ofimàtica evelyn palaciosOfimàtica evelyn palacios
Ofimàtica evelyn palacios
 
SwarmMind_GE.pdf
SwarmMind_GE.pdfSwarmMind_GE.pdf
SwarmMind_GE.pdf
 
Bewerb02_ChildrenTour.pdf
Bewerb02_ChildrenTour.pdfBewerb02_ChildrenTour.pdf
Bewerb02_ChildrenTour.pdf
 
Presentacion 6
Presentacion 6Presentacion 6
Presentacion 6
 
Sesion1
Sesion1Sesion1
Sesion1
 
Glosario
GlosarioGlosario
Glosario
 
pi936.pdf
pi936.pdfpi936.pdf
pi936.pdf
 
921.pdf
921.pdf921.pdf
921.pdf
 
schlossfruehling.pdf
schlossfruehling.pdfschlossfruehling.pdf
schlossfruehling.pdf
 
Lo mejor de la Musica pop
Lo mejor de la Musica popLo mejor de la Musica pop
Lo mejor de la Musica pop
 
Act. 2 efecto de las herramientas digitales sin terminar
Act. 2 efecto de las herramientas digitales sin terminarAct. 2 efecto de las herramientas digitales sin terminar
Act. 2 efecto de las herramientas digitales sin terminar
 
Sentencia de vista
Sentencia de vistaSentencia de vista
Sentencia de vista
 
USA aktuell.pdf
USA aktuell.pdfUSA aktuell.pdf
USA aktuell.pdf
 
Zusammenfassung.pdf
Zusammenfassung.pdfZusammenfassung.pdf
Zusammenfassung.pdf
 
Ana frank
Ana frankAna frank
Ana frank
 
651_AMR_201007.pdf
651_AMR_201007.pdf651_AMR_201007.pdf
651_AMR_201007.pdf
 
Educar en la sociedad del conocimiento
Educar en la sociedad del conocimientoEducar en la sociedad del conocimiento
Educar en la sociedad del conocimiento
 

Similaire à API REST conceptos (Rails-api)

Joserojas Web 2.0
Joserojas Web 2.0Joserojas Web 2.0
Joserojas Web 2.0
Jose Rojas
 
Programacion web c5 programacion del lado servidor
Programacion web c5 programacion del lado servidorProgramacion web c5 programacion del lado servidor
Programacion web c5 programacion del lado servidor
Alejandro Hernandez
 
Servicios web
Servicios webServicios web
Servicios web
itoomac02
 
Servicios web
Servicios webServicios web
Servicios web
itoomac02
 
Revision de tecnologias web
Revision de tecnologias webRevision de tecnologias web
Revision de tecnologias web
FRISLY5
 
Servicios web java php-perl-google
Servicios web java php-perl-googleServicios web java php-perl-google
Servicios web java php-perl-google
Josue Hernandez
 

Similaire à API REST conceptos (Rails-api) (20)

Desarrollo de Apps Web en Ruby on Rails
Desarrollo de Apps Web en Ruby on RailsDesarrollo de Apps Web en Ruby on Rails
Desarrollo de Apps Web en Ruby on Rails
 
Joserojas Web 2.0
Joserojas Web 2.0Joserojas Web 2.0
Joserojas Web 2.0
 
Desarrollando un API con REST
Desarrollando un API con RESTDesarrollando un API con REST
Desarrollando un API con REST
 
Presentacion Ruby on Rails en Universidad Autónoma 2009
Presentacion Ruby on Rails en Universidad Autónoma 2009Presentacion Ruby on Rails en Universidad Autónoma 2009
Presentacion Ruby on Rails en Universidad Autónoma 2009
 
Ruby on Rails
Ruby on RailsRuby on Rails
Ruby on Rails
 
Jose Rojas Desarrollo Rapido de Aplicaciones con RoR
Jose Rojas Desarrollo Rapido de Aplicaciones con RoRJose Rojas Desarrollo Rapido de Aplicaciones con RoR
Jose Rojas Desarrollo Rapido de Aplicaciones con RoR
 
Api rest ful
Api rest fulApi rest ful
Api rest ful
 
Integración de Tecnologías y Plataformas.pptx
Integración de Tecnologías y Plataformas.pptxIntegración de Tecnologías y Plataformas.pptx
Integración de Tecnologías y Plataformas.pptx
 
Servicios web java, php, perl, google
Servicios web java, php, perl, googleServicios web java, php, perl, google
Servicios web java, php, perl, google
 
Tecnologías web.pptx
Tecnologías web.pptxTecnologías web.pptx
Tecnologías web.pptx
 
Desarrollo web
Desarrollo webDesarrollo web
Desarrollo web
 
Groopify para groopies
Groopify para groopiesGroopify para groopies
Groopify para groopies
 
Servicios web Extendido_error perl
Servicios web Extendido_error perlServicios web Extendido_error perl
Servicios web Extendido_error perl
 
Programacion web c5 programacion del lado servidor
Programacion web c5 programacion del lado servidorProgramacion web c5 programacion del lado servidor
Programacion web c5 programacion del lado servidor
 
Servicios web
Servicios webServicios web
Servicios web
 
Servicios web
Servicios webServicios web
Servicios web
 
Servicios web
Servicios webServicios web
Servicios web
 
Ekipo 2
Ekipo 2Ekipo 2
Ekipo 2
 
Revision de tecnologias web
Revision de tecnologias webRevision de tecnologias web
Revision de tecnologias web
 
Servicios web java php-perl-google
Servicios web java php-perl-googleServicios web java php-perl-google
Servicios web java php-perl-google
 

Dernier

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Dernier (15)

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 

API REST conceptos (Rails-api)