Rest Flashcards

1
Q

¿Qué cosas NO es Rest?

A
  • No es un estándar
  • No es un protocolo
  • No es un reemplazo de SOAP
  • No es una biblioteca
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Qué es Rest?

A

Rest significa Representational State Transfer.

Usa estándares existentes como HTTP, y forma parte de la comunicación cliente-servidor.

Rest se presenta en 3 niveles de madurez.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Cuáles son las características de Rest?

A
  • Tiene un arquitectura cliente-servidor
  • Es stateless
  • Es cacheable
  • Expone recursos
  • Usa explícitamente los verbos HTTP
  • Es navegable

Rest es utilizada con el fin de desacoplar el comportamiento entre cliente y servidor. Con tan sólo el conocimiento de cómo se van a transferir los datos es suficiente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Qué significa que Rest sea Stateless?

A
  • Cada request se ejecuta de forma independiente del resto.
  • Cada request es interpretable sin necesidad de conocer la historia de las requests.
  • Cada request contiene toda la información necesaria para completarse.
  • La API no mantiene ningún tipo de sesión.
  • Se promueve el uso de tokens para manejo de seguridad.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Qué significa que Rest sea Cacheable?

A
  • Utiliza los mecanismos de HTTP para reducir el ancho de banda usando la latencia y la carga en los servidores.
  • Lo que se define como “cacheabilidad” en los sistemas REST es la capacidad de estos sistemas para etiquetar de alguna forma las respuestas para que otros mecanismos intermedios funcionen como caché.
  • Estos sistemas o mecanismos intermedios no deben afectar la manera en que los servicios se consumen.

Ej: expires, cache-control, last-modified

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Qué significa que Rest tenga “Comprensión”?

A

Las APIs suelen retornar representaciones en varios formatos, entre ellos formato plano, XML, HTML, JSON y otros formatos que pueden ser comprimidos para ahorrar ancho de banda sobre la red.

Ej: accept-encoding, content-encoding

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

¿Qué significa que Rest ‘expone recursos’?

A

Rest expone recursos con URIs (Uniform Resource Identifier).

  • Se identifican de forma unívoca los recursos con cadenas de caracteres.
  • Se identifica los recursos por clase o tipo.
  • Se usan sustantivos en plural por convención, no verbos.
  • Hay una distinción de recursos principales y subordinados.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Cuáles son los verbos HTTP par las requests?

A
  1. GET: solicita una representación de un recurso específico.
  2. PUT: reemplaza todas las representaciones actuales del recurso de destino con la carga útil de la petición.
  3. POST: para enviar una entidad a un recurso en específico.
  4. PATCH: aplica modificaciones parciales a un recurso (a diferencia de PUT).
  5. DELETE: borra un recurso en específico
  6. OPTIONS: es utilizado para describir las opciones de comunicación para el recurso de destino.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Cuáles son los distintos códigos de Responses de HTTP?

A
  • 1xx: Informational
  • 2xx: Success
  • 3xx: Redirection
  • 4xx: Client Error
  • 5xx: Server Error
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Explique los códigos de Información más comunes

A

100 Continue
El navegador puede continuar realizando su petición (se utiliza para indicar que la primera parte de la petición del navegador se ha recibido correctamente).

102 Processing (WebDAV - RFC 2518)
El servidor está procesando la petición del navegador pero todavía no ha terminado (esto evita que el navegador piense que la petición se ha perdido cuando no recibe ninguna respuesta).

103 Checkpoint
Se va a reanudar una petición POST o PUT que fue abortada previamente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Explique los códigos de Success más comunes

A

200 OK
201 Created
202 Accepted

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Explique los códigos de Error más comunes

A

400 Bad Request
La solicitud contiene sintaxis errónea y no debería repetirse.

401Authorization Required

403 Forbidden

404 Not Found

405 Method Not Allowed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly