API, abreviatura de interfaz de programa de aplicación, es un conjunto de prácticas, protocolos y herramientas para crear aplicaciones de software. A veces es posible que necesitemos integración de terceros para nuestra aplicación web. Lograrlo REST API es algo fácil. La ventaja de Rest API será independiente del idioma.
REST (Transferencia de estado representacional) es una arquitectura simple que se ejecuta a través de HTTPS o TLS. El estilo REST enfatiza que las interacciones entre clientes y servicios se mejoran al tener un número limitado de operaciones.
La flexibilidad se proporciona asignando a los recursos sus propios indicadores universales de recursos (URI). Debido a que cada operación (GET, POST, PUT y DELETE) tiene un significado específico, REST evita la incertidumbre.
Construyendo una API REST simple:
La API no necesita ninguna vista ya que el usuario no interactúa directamente con la aplicación. Simplemente especificamos los datos que enviará el tercero.
No habrá ninguna acción de visualización o edición ya que no tenemos ninguna vista aquí. Para cada solicitud se devolverán algunos datos con un código de estado y un mensaje de error de éxito. Los datos pueden tener el formato json o xml.
Requisito: gema 'rails-api'
Mientras crea la aplicación, cree como Rails-api new [nombre_aplicación], para evitar la vista, activos/hojas de estilo y activos/javascript.
Tenemos que crear un espacio de nombres para nuestra API, lo que mantiene nuestro código limpio y mantiene sus API independientes del resto de sus controladores. Comenzamos esto agregando nuestras rutas.
rutas.rb
espacio de nombres: api hacer
recursos: usuarios
fin
Buscará un UsersController en app/controllers/api/users_controller.rb
clase api::UsersController < ApplicationController
fin
Espero que todos estén familiarizados con las operaciones CRUD simples. Hagan lo mismo aquí, pero no tendrá ninguna vista, por lo que en lugar de la redirección debemos representar algunos datos con un código de estado.
Por ej.
clase Api::UsersController < ApplicationController
índice de definición
@usuarios = Usuario.todos
responder_para hacer |formato|
formato.json { renderizar json: @usuarios }
formato.xml { renderizar xml: @usuarios }
fin
findefinitivamente destruir
responder_para hacer |formato|
si @ usuario.destroy
format.json {head:no_content, status::Eliminado correctamente}
format.xml {head:no_content, status::Eliminado correctamente}
demás
format.json { renderizar json: @user.errors, estado:: No se puede }
format.xml { render xml: @user.errors, estado:: No se puede }
fin
fin
finfin
De esta manera podemos construir una API REST.
Si necesita agregar alguna característica nueva, cualquier cambio en su API, puede realizar versiones de su API.
Versionado de API
En rutas.rb
espacio de nombres: api hacer
espacio de nombres: v1 hacer
recursos: usuarios
fin
fin
Buscará un UsersController en
aplicación/controladores/api/v1/users_controller.rb
clase Api::V1::UsersController < Controlador de aplicaciones
fin
Finalmente proporcione la documentación API para los usuarios.
Solicitudes de API:
Listado de usuarios
URL: http://localhost:3000/api/users
método: OBTENER
Eliminando usuario
URL: http://localhost:3000/api/users/:id
método: BORRAR
RailsCarma, una empresa de rieles global de renombre y marca que brinda servicios de desarrollo de RoR de alto nivel durante una década. Proporciona soluciones actualizadas y de alto nivel para todos los servicios RoR.
Leer artículos similares: