Una representación es la estructura del recurso, no vinculada a ninguna sintaxis de codificación. Por ejemplo, si lo mío es una carta, mi estructura podría ser:
fecha, de nombre, de dirección, de nombre, de dirección, contenido
O podría ser:
- ¿Cuáles son algunas de las características de una excelente API de pagos y banca?
- ¿Cómo realiza un seguimiento de las diferentes versiones de su código?
- ¿Qué es la etiqueta creativa y la etiqueta publicitaria?
- ¿Cómo / puedo mostrar mi proyecto en Github dentro de la comunidad de Github?
- ¿Puedo emprender acciones legales si alguien roba mis fotos de Instagram usando sitios web de terceros?
fecha de envío, número de páginas, número de palabras, desde, hasta, firma, saludo, tamaño de papel, contenido
Estas son dos representaciones diferentes de lo que es una letra, adecuada para diferentes propósitos.
Cualquiera de las representaciones podría estructurarse como XML, JSON o ProtoBuf. La convención dice que el tipo de contenido debe usarse para indicar cómo se codifica su representación.
Sin embargo, también podríamos tener una imagen de la carta. Esa es otra representación razonable, pero no tiene mucho sentido tener una codificación JSON de una imagen. Además, para confundir las cosas, el viejo y simple HTTP usa el tipo de contenido para indicar si algo es una imagen, por lo que queremos seguir con eso. Esto significa que, en algunos casos, su tipo de contenido también le dará una representación diferente, no solo una codificación diferente de la misma representación.
Los puntos finales y los recursos están estrechamente vinculados. Mi recurso es una carta. Mi punto final será algo así como:
/ cartas / 98
Lo que devolverá una representación de la letra número 98
O, si mi recurso es una lista de letras, el punto final podría ser:
/ letters? from-name = Fred + Bloggs
Lo que devolverá una representación de una lista de letras, incluidas solo las cartas de Fred Bloggs