Estoy tratando de tener un mejor sentido de las partes internas de HTTP, y con frecuencia se mencionan "entidades" y "mensajes" en la especificación, aunque parezca extraño sin una explicación adecuada, créanlo o no. De lo que reuní, uno identifica el contenido mismo, incluso cuando se divide en una cadena de solicitud/respuesta y/o transfiere reglas de fragmentación de codificación, mientras que el otro identifica el contenido de una única solicitud HTTP, es decir, lo que sigue a los encabezados y termina con un CRLF. Mi problema es que no puedo averiguar cuál es exactamente.¿Cuál es el mensaje y cuál la entidad en la terminología HTTP?
5
A
Respuesta
8
A HTTP-message es o bien una solicitud o una respuesta :
HTTP-message = Request | Response ; HTTP/1.1 messages
A HTTP-mensaje tiene cero o más mensaje de cabecera de s y puede tener una message-body:
generic-message = start-line *(message-header CRLF) CRLF [ message-body ]
Así que no todos los HTTP mensaje tiene un mensaje cuerpo. Pero si tiene un mensaje de cuerpo, entonces eso es también la entidad cuerpo:
message-body = entity-body | <entity-body encoded as per Transfer-Encoding>
Así que en resumen: Un mensaje es toda la petición o respuesta HTTP. Y la entidad es el cuerpo del mensaje (si hay alguno) y su correspondiente entity header fields.
Cuestiones relacionadas
- 1. Cuál es la diferencia entre http: // * 80 y http: // +: 80
- 2. ¿Cuál es la terminología correcta para una solicitud "no AJAX"?
- 3. ¿Cuál es la entidad de caracteres HTML para el signo #?
- 4. ¿Cuál es la diferencia entre net.tcp y http?
- 5. ¿Cuál es la diferencia entre una historia de usuario y una característica en terminología ágil?
- 6. Terminología: ¿Cuál es la diferencia entre una clase y un componente?
- 7. ¿Qué es el "encabezado HTTP sin procesar"? ¿Cuál es la diferencia entre "encabezado HTTP" y "encabezado HTTP sin procesar"?
- 8. ¿Cuál es la forma correcta de validar solicitudes HTTP y devolver respuestas HTTP específicas en Global.asax?
- 9. ¿Cuál es el método predeterminado de HTTP?
- 10. ¿Cuál es el efecto de AsEnumerable() en una entidad LINQ?
- 11. Terminología de protocolo: mensaje versus paquete
- 12. ¿Cuál es la diferencia entre la opción keep_alive y la persistente para la solicitud HTTP?
- 13. ¿Cuál es el campo "Content-Length" en el encabezado HTTP?
- 14. Cuál es la diferencia entre la función() {}() y la función() {}()
- 15. ¿Cuál es la función del encabezado HTTP "Vary: Accept"?
- 16. ¿Cuál es la relación entre GTK, GTK + y GTK2?
- 17. ¿Cuál es la diferencia entre el casting y la conversión?
- 18. ¿Cuál es la diferencia entre el colado y la coerción?
- 19. ¿cuál es la diferencia entre el complemento y la biblioteca?
- 20. ¿cuál es la diferencia entre el material y la textura?
- 21. ¿Cuál es la diferencia entre el marco y la arquitectura?
- 22. ¿Cuál es el enfoque de generación de identidad recomendado en el marco de la Entidad?
- 23. ¿Cuál es la diferencia entre la tubería y el zócalo?
- 24. ¿Cuál es la diferencia entre un elenco a BOOL y el envío del mensaje boolValue?
- 25. ¿Cuál es la diferencia entre el formato OMF y COFF?
- 26. ¿Cuál es la diferencia entre el operador "=" y "==" en Bash?
- 27. ¿Cuál es la diferencia entre: = y + = en el archivo make?
- 28. ¿cuál es la diferencia entre:.! y: r !?
- 29. ¿Cuál es la diferencia entre una subrutina y una función?
- 30. drawBitmap() y setPixels(): ¿cuál es la zancada?
Bien, pero ¿qué es un cuerpo-entidad en lo de arriba? Consideremos una solicitud POST con tipo de contenido especificado como "multipart/form-data" que transporta datos de archivos, y un par de pares de valores variables. En la solicitud, un mensaje es la solicitud completa, el encabezado y todo, ¿verdad? El cuerpo del mensaje es el blob binario que sigue a los encabezados, ¿verdad? Lo que pasa es que creo que el cuerpo de la entidad es otra cosa ... De todos modos, como puedes ver, estoy casi tan confundido como estaba ... – amn
@amn: La entidad está en el mensaje. La entidad es la suma de * entity-header * s y * entity-body * (the * message-body *). Algunos de los * encabezados de mensaje * s describen el mensaje y algunos describen la entidad. * Date *, por ejemplo, es un * message-header * (describe el mensaje) y * Content-Type * es un * entity-header * (describe la entidad). – Gumbo
Sí, eso lo explica todo, ¡gracias! Pensé que un mensaje codifica y transfiere una entidad, mientras que la entidad tiene un tipo, por lo que ambos están definidos por diferentes encabezados. – amn