Saltar al contenido

¿Qué es “representación”, “estado” y “transferencia” en la Transferencia de Estado Representacional (REST)?

Solución:

REST trata sobre la manipulación del estado de los recursos a través de sus representaciones en la parte superior de la comunicación sin estado entre el cliente y el servidor. Es un estilo arquitectónico independiente del protocolo pero, en la práctica, se implementa comúnmente en la parte superior del protocolo HTTP.

Al diseñar REST sobre HTTP, las URL se utilizan para ubicar los recursos, los métodos HTTP se utilizan para expresar las operaciones sobre los recursos y las representaciones como JSON y / o documentos XML se utilizan para representar el estado del recurso. Los encabezados HTTP se pueden usar para intercambiar algunos metadatos sobre la solicitud y la respuesta, mientras que el código de estado HTTP se usa para informar al cliente sobre el estado de la operación.


Que es un recurso en mi ejemplo?

Comprender recurso como el concepto de usuario. No piense en la tabla de su base de datos, piense en una abstracción de un usuario con su conjunto de atributos.

Que es un representación en mi ejemplo?

Se puede utilizar un documento JSON para representar el estado de un recurso en particular. Un recurso puede tener muchas representaciones, como documentos JSON y / o XML, y el cliente puede usar negociación de contenido para solicitar diferentes representaciones del mismo recurso.

Que es un transferencia de estado o cuando sucede esto en mi ejemplo?

los estado de un recurso dado se puede recuperar y manipular mediante representaciones.

A GET request, por ejemplo, le permite recuperar una representación del estado de un recurso, enviado en la carga útil de respuesta. A PUT request, por ejemplo, le permite reemplazar el estado de un recurso con el estado definido por la representación incluida en la carga útil de la solicitud.


Ejemplo

Considere un recurso de usuario con atributos como identificación y nombre almacenado de alguna manera en su servidor:

  • ID: 1
  • Nombre: John Doe

Estos detalles hacen que el estado del recurso.

Una URL como /users/1 puede ser usado para localizar el recurso en su servidor.

Solicitudes como GET, PUT y DELETE se puede realizar contra esta URL para recuperar / manipular el estado del recurso usando representaciones, como documentos JSON y / o XML (se pueden admitir otras representaciones según sus necesidades):

{
  "id": 1,
  "name": "John Doe"
}
<user>
  <id>1</id>
  <name>John Doe</name>
</user>

Los documentos que se muestran arriba no son el recurso en sí. Son solo una forma de representar el recurso. que se almacena de alguna manera en su servidor.

Si quieres entender REST, deberías empezar desde la fuente: la tesis de Fielding.

¿Qué es un recurso en mi ejemplo?

De acuerdo, revisión del término:

La abstracción clave de información en REST es un recurso. Cualquier información que se pueda nombrar puede ser un recurso: un documento o una imagen, un servicio temporal (por ejemplo, “el tiempo actual en Los Ángeles”), una colección de otros recursos, un objeto no virtual (por ejemplo, una persona), etc. . En otras palabras, cualquier concepto que pueda ser el objetivo de la referencia de hipertexto de un autor debe encajar dentro de la definición de un recurso. Un recurso es un mapeo conceptual de un conjunto de entidades, no la entidad que corresponde al mapeo en un momento determinado.

En otras palabras, el “recurso” es el concepto del que estás hablando. En este caso, el usuario con nombre xxx. Pero podría ser cualquier cosa: la tabla que contiene los datos sobre el usuario con el nombre xxx también es un “recurso”.

¿Qué es una representación en mi ejemplo?

Las representaciones son fundamentalmente matrices de bytes

Una representación es una secuencia de bytes, más metadatos de representación para describir esos bytes. Otros nombres menos precisos para una representación de uso común incluyen: documento, archivo y entidad, instancia o variante de mensaje HTTP.

Entonces, su documento json, más precisamente, la matriz de bytes codificada en utf-8, es una representación. Un recurso dado puede tener muchas representaciones en un momento dado.

¿Qué es una transferencia estatal o cuándo sucede esto en mi ejemplo?

Cuando el cliente y el servidor intercambian mensajes; el estilo arquitectónico cliente-servidor es la primera de las limitaciones arquitectónicas del estilo arquitectónico REST.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *