La diferencia entre obtener solicitud y publicar solicitud (concisa y fácil de entender)

1. ¿Qué son GET y POST?

Los dos métodos para enviar solicitudes en el protocolo HTTP consisten esencialmente en realizar conexiones TCP.

2. ¿Cuál es la diferencia entre la solicitud GET y la solicitud POST?

Los parámetros de solicitud GET se pasan a través de la URL y los parámetros de solicitud POST se incluyen en el cuerpo de la solicitud.

Las solicitudes GET son menos seguras que las solicitudes POST porque los parámetros se exponen directamente en la URL, por lo que las solicitudes GET no se pueden utilizar para pasar información confidencial.

Los parámetros pasados ​​en la URL de la solicitud GET tienen un límite de longitud (no hay límite en la longitud de la URL en el protocolo HTTP. El límite es el límite impuesto por el navegador y el servidor específicos. Diferentes navegadores tienen diferentes límites de longitud. ), POST no tiene límite de longitud.

Los parámetros de solicitud GET se conservarán por completo en el historial del navegador y los parámetros de solicitud POST no se conservarán.

Las solicitudes GET están codificadas en URL (codificación porcentual) y las solicitudes POST admiten múltiples métodos de codificación.

La dirección URL generada por la solicitud GET se puede marcar como favorita (marcada), pero la solicitud POST no.

Las solicitudes GET son inofensivas cuando el navegador retrocede y las solicitudes POST enviarán los datos nuevamente.

Las solicitudes GET se pueden almacenar en caché de forma activa en el navegador, pero las solicitudes POST no se pueden configurar manualmente y se pueden configurar.

3. Profundiza

1. Existe una diferencia importante entre GET y POST:

hablando en general

GET genera un paquete TCP.

POST produce dos paquetes TCP.

complicado de decir

Para una solicitud GET, el navegador enviará el encabezado http y los datos juntos, y el servidor responderá con 200, lo que indica que la solicitud se realizó correctamente.

Para las solicitudes POST, el navegador primero envía el encabezado, el servidor responderá con 100 (la primera parte de la solicitud se ha recibido y el resto está esperando), el navegador envía datos nuevamente, el servidor devuelve 200 y la solicitud es exitoso.

2. Dado que la solicitud POST requiere dos pasos, ¿consumirá más tiempo que la solicitud GET? No.

Las solicitudes GET y POST tienen su propia semántica y no se pueden mezclar a la ligera.

Cuando el entorno de red es bueno, se puede ignorar la diferencia entre el momento de enviar un paquete y el momento de enviar dos paquetes. Cuando el entorno de red es deficiente, TCP envía dos paquetes tiene una gran ventaja para verificar la integridad de los datos. .

No todos los navegadores envían el paquete dos veces en la solicitud POST. Por ejemplo: Firefox.

 1. HTTP tiene solo dos modos de comando: POST y GET;
2. POST está diseñado para poner las cosas hacia arriba, mientras que GET está diseñado para obtener cosas del servidor. GET también puede transmitir menos datos al servidor, y la razón por la que Get puede También transmitir datos es solo para decirle al servidor qué tipo de datos necesita. La información de POST se usa como el contenido de la solicitud HTTP, mientras que GET se transmite en el encabezado HTTP; 3. POST y GET están en HTTP Los métodos de
transmisión son diferentes. Los parámetros de GET se transmiten en el encabezado HTTP, mientras que los datos de Post se transmiten en el contenido de la solicitud HTTP. 4.
Cuando POST transmite datos, no es necesario mostrarlos en la URL, mientras que GET
5. Debido a la limitación de la longitud de la URL, el método GET solo puede transferir alrededor de 1024 bytes, la cantidad de datos transmitidos por POST es grande, que puede alcanzar los 2 M ;


El método GET se puede utilizar para transmitir cierta información de parámetros que se puede divulgar y es más conveniente de analizar, como las palabras clave de búsqueda de Baidu, mientras que el método POST se puede utilizar para enviar información confidencial de un usuario (si no se utiliza el cifrado HTTPS). , el cuerpo del mensaje seguirá siendo texto sin formato, fácilmente interceptado y leído por otros

Método Descripción
GET solicita el contenido de la página especificada y devuelve el cuerpo de la entidad
HEAD. Es similar a la solicitud get, excepto que no hay contenido específico en la respuesta devuelta. Se utiliza para obtener el encabezado. POST
envía datos al recurso especificado para procesar la solicitud (como enviar un formulario o cargar un archivo). Los datos se incluyen en el cuerpo de la solicitud. Las solicitudes POST pueden resultar en la creación de nuevos recursos o la modificación de recursos existentes.
PUT Los datos transmitidos desde el cliente al servidor reemplazan el contenido del documento especificado
DELETE Solicita al servidor que elimine la página especificada
CONNECT Reservado en el protocolo HTTP1.1 para servidores proxy que pueden cambiar el método de conexión a una canalización
OPCIONES Permite al cliente para ver el rendimiento del servidor
TRACE hace eco de la solicitud recibida por el servidor, que se utiliza principalmente para probar o diagnosticar
el principio de funcionamiento de HTTP.
El protocolo HTTP define cómo el cliente web solicita una página web del servidor web y cómo El servidor transmite la página web al cliente. El protocolo HTTP utiliza un modelo de solicitud/respuesta. El cliente envía un mensaje de solicitud al servidor, que contiene la línea de solicitud (método de solicitud, URL, versión del protocolo), el encabezado de la solicitud, la línea en blanco y los datos de la solicitud. El servidor responde con una línea de estado, que contiene la línea de estado (versión del protocolo, código de éxito o error, información del servidor), encabezados de respuesta, líneas en blanco y datos de respuesta.

Pasos de solicitud/respuesta HTTP: El cliente se conecta al servidor web -> Envía una solicitud HTTP (un mensaje de solicitud consta de 4 partes: línea de solicitud, encabezado de solicitud, línea en blanco y datos de solicitud). -> El servidor acepta la solicitud y devuelve un Respuesta HTTP (una respuesta consta de 4 partes: línea de estado, encabezado de respuesta, línea en blanco y datos de respuesta). -> Liberar la conexión TCP -> El navegador del cliente analiza el contenido HTML
 

Supongo que te gusta

Origin blog.csdn.net/weixin_62765236/article/details/126502705
Recomendado
Clasificación