HTTP0.9: lo
más simple es solo la línea de solicitud GET index.html
HTTP1.0:
- Agregar encabezado de solicitud y encabezado de respuesta para aclarar la solicitud y la respuesta
- Aumente el código de estado para aclarar la respuesta.
- Aumente la función de caché, puede usar el caché directamente cuando el contenido solicitado se solicita nuevamente
GET index.html HTTP / 1.0
accept: application / html
accept-charset: utf-8
accept-encoding: gzip
accept-language: zh-CN
HTTP / 1.0 200 OK <! DOCTYPE html > < html > < head > </ head > < body > ¡ hola mundo! </ body > </ html >
- aceptar Resuelva el problema del formato de archivo, ya sea json o html, el navegador analiza el archivo de acuerdo con diferentes formatos de archivo
- accept-charset resuelve el problema de codificación del archivo y le dice al navegador cómo analizar la secuencia de caracteres en una secuencia de bytes
- accept-encoding resuelve el problema de la compresión de archivos grandes, el navegador usa un método de descompresión específico para descomprimir
- accept-language resuelve el problema de la internacionalización, diferentes países solicitan documentos en diferentes idiomas
HTTP1.1
- Conexión persistente, varias solicitudes http utilizan la misma conexión tcp, lo que reduce la sobrecarga del establecimiento de la conexión tcp
- Se pueden establecer múltiples conexiones tcp entre el cliente y el servidor para resolver el problema del bloqueo de colas
- El cuerpo de respuesta se puede transmitir en fragmentos sin tener que transmitir todo el contenido a la vez
- El campo de longitud de contenido agregado al encabezado de respuesta satisface el problema de que el contenido dinámico no puede calcular la longitud al mismo tiempo y no puede completar la transmisión al mismo tiempo
- Mecanismo de seguridad agregado y mecanismo de cookies
Multiplexación HTTP2.0
, solo se establece un tcp entre el cliente y el servidor, cada solicitud http se divide en múltiples tramas, y se combinan y transmiten múltiples tramas http en una conexión tcp
HTTP3.0 mata a
tcp, porque tcp todavía se envía en secuencia y se recibe secuencialmente, y todavía hay un problema con la cabeza de la cola. Matar tcp puede resolver el problema de la cabeza de la cola, pero esto es solo un sueño