DESCANSAR
¿Qué es REST?
REST es el estilo arquitectónico de software de la World Wide Web
REST es un estilo de diseño y método de desarrollo de aplicaciones web basado en HTTP, se puede definir en formato XML o en formato JSON .
REST es adecuado para escenarios en los que los fabricantes de Internet móvil sirven como interfaces comerciales, realizando la función de OTT de terceros llamando a los recursos de la red móvil, y los tipos de acción agregan, cambian y eliminan los recursos llamados.
Introducción a REST
REST:T ransferencia de Estado R epresentacional
- Representacional: representación de datos
- Estado: estado actual o datos
- Transferencia: transferencia de datos
Para obtener contenido más emocionante, busque " " en WeChat前端爱好者
y haga clic en mí para verlo .
REST seis limitaciones
Cliente-Servidor (Cliente/Servidor)
- separación de intereses
- El servidor se enfoca en el almacenamiento de datos, mejorando la simplicidad (haciendo que el código del servidor sea más simple)
- El front-end se centra en la interfaz de usuario, lo que mejora la portabilidad (fácil de trasladar a otros proyectos)
Apátrida
- Toda la información de la sesión del usuario se mantiene en el lado del cliente
- Cada solicitud debe contener toda la información
- No se puede confiar en la información contextual
- El servidor no necesita guardar la información de la sesión.
- Simplicidad, Confiabilidad, Visibilidad
Cache
- Todas las respuestas del servidor deben marcarse como almacenables en caché o no almacenables en caché
- Reduzca las interacciones front-end y back-end y mejore el rendimiento
Interfaz uniforme
- El diseño de la interfaz es lo más unificado y universal posible.
- La interfaz está desacoplada y los extremos frontal y posterior se desarrollan de forma independiente
Sistema en capas
- Cada capa solo conoce la capa adyacente.
- El cliente no sabe si comunicarse con el proxy o con el servidor real
- Otras capas: capa de seguridad, equilibrio de carga, capa de almacenamiento en caché
Código bajo demanda
- El cliente puede descargar y ejecutar el código desde el servidor.
- Simplificar el cliente reduciendo alguna funcionalidad
Limitaciones de la interfaz unificada
La restricción de la interfaz unificada es una sub-restricción de la "interfaz unificada" en las 6 restricciones REST presentadas anteriormente, que nos dice cómo debe diseñarse la interfaz de estilo REST.
ID de recurso
Un recurso es cualquier transacción que puede ser nombrada
-
Cada recurso se puede identificar de forma única mediante un URI
- https://api.github.com/usuarios
- https://api.github.com/users/123
Manipulación de recursos a través de representaciones
La expresión es representación
- El cliente no puede manipular directamente los recursos del servidor.
- Los clientes deben manipular los recursos a través de representaciones – JSON
información autodescriptiva
Cada mensaje debe proporcionar información suficiente para que el destinatario lo entienda.
- Tipo de medio (aplicación/json)
- Método HTTP: GET, POST
- Ya sea para almacenar en caché: Cache-Control
Hipermedia como motor de estado de aplicaciones
- Hipermedia: Enlaces con Texto
- Estado de la aplicación: una página web
- Motor: conducir, saltar
Haga clic en un enlace para saltar a otra página
API RESTful
RESTful API es una API de estilo REST, es decir, rest es un estilo arquitectónico que no tiene nada que ver con lenguajes de programación o plataformas, y utiliza HTTP como protocolo de transmisión.
Introducción a las API RESTful
¿Cómo es exactamente una API RESTful?
- URI básico como https://api.github.com/users
- Métodos HTTP estándar como GET, POST, PUT, DELETE
- El tipo de medio de datos transmitido , como JSON, XML
ejemplo
- GET /users Obtener lista de usuarios
- GET /users/12 Ver un usuario específico
- PUT /usuarios/12 Actualizar usuario 12
- ELIMINAR /usuarios/12 eliminar usuario 12
Mejores prácticas para el diseño de API RESTful
solicitar especificaciones de diseño
- URI usa sustantivos, trate de usar plurales , como /usuarios
- Los URI usan el anidamiento para representar asociaciones, como /users/12/repos/5
- Use el método HTTP correcto , como GET/POST/PUT
- Casos que no se ajustan a CRUD: POST/acción/subrecurso
Especificación de diseño receptivo
Correspondiente: el valor de retorno de la interfaz
- Preguntar
- paginación
- filtro de campo
- código de estado
- manejo de errores
regulaciones de seguridad
- HTTPS
- autenticación
- limitando
amigable para desarrolladores
- documento
- hipermedia