obtener y publicar solicitudes en html

Soy nuevo en obtener y publicar. Como está escrito en la especificación del protocolo HTML, get se usa para obtener recursos del servidor y post se usa para enviar datos del formulario: cuando el usuario completa el formulario y hace clic en el botón enviar, aparece un POST. La solicitud se utiliza para enviar los datos del formulario al servidor, pero
al estudiar las vulnerabilidades, encontré que algunas solicitudes se enviaban como solicitudes de obtención, lo cual no era muy consistente con lo que decía el protocolo, por lo que tenía preguntas al respecto. ¿Cuál es la diferencia entre obtener y publicar? Busqué información y luego encontré un artículo en Internet.

En nuestro mundo de la World Wide Web, TCP es como un automóvil. Usamos TCP para transportar datos. Es muy confiable y nunca faltará ningún elemento.
Pero si todos los coches en las carreteras tienen el mismo aspecto, el mundo parecerá un desastre: los coches que transmiten mensajes urgentes pueden ser bloqueados por coches cargados de mercancías delante de ellos, y todo el sistema de transporte definitivamente quedará paralizado. Para evitar que esto suceda, nació Traffic Rules HTTP.
HTTP ha establecido varias categorías de servicios para el transporte de automóviles, incluidos GET, POST, PUT, DELETE, etc. HTTP estipula que al ejecutar una solicitud GET, el automóvil debe estar etiquetado con GET (establezca el método en GET) y requiere Poner el datos transmitidos en el techo del coche (en la URL) para facilitar la grabación.
Si se trata de una solicitud POST, se debe colocar una etiqueta POST en el automóvil y colocar la mercancía en el transporte. Por supuesto, también puedes esconder en secreto algunos bienes en el auto durante GET, pero esto es muy vergonzoso; también puedes poner algunos datos en el techo durante POST, lo que hace que la gente se sienta tonta. HTTP es solo un código de conducta y TCP es la base de cómo se implementan GET y POST.
Sin embargo, solo vemos que HTTP impone requisitos sobre el canal de transmisión de los parámetros GET y POST (url o cuerpo de solicitud). ¿De dónde viene el límite en el tamaño de los parámetros en la "respuesta estándar"?

En mi gran mundo de la World Wide Web, hay otro papel importante: las empresas de transporte.
Diferentes navegadores (que inician solicitudes http) y servidores (que aceptan solicitudes http) son diferentes empresas de transporte. Aunque en teoría, puedes apilar mercancías ilimitadas en el techo del automóvil (se pueden agregar parámetros ilimitados a la URL). Pero las empresas de transporte no son estúpidas. La carga y descarga también son muy costosas. Limitarán el volumen de un solo envío para controlar los riesgos. Demasiados datos supondrán una gran carga para el navegador y el servidor.
La regla no escrita en la industria es que (la mayoría) de los navegadores generalmente limitan la longitud de la URL a 2 KB, y (la mayoría) de los servidores pueden manejar URL de hasta 64 KB de tamaño. Cualquier exceso no será procesado. Si utiliza el servicio GET y oculta secretamente datos en el cuerpo de la solicitud, diferentes servidores lo manejarán de manera diferente. Algunos servidores lo ayudarán a descargar y leer los datos, mientras que otros los ignorarán directamente. Por lo tanto, aunque GET puede traer el cuerpo de la solicitud, No se puede garantizar su recepción.
Bien, ahora sabes que GET y POST son esencialmente enlaces TCP, no hay diferencia. Sin embargo, debido a las regulaciones HTTP y las limitaciones del navegador/servidor, muestran algunas diferencias en el proceso de solicitud.

Explicación original

Lo que sigue es que entiendo
que ya sea una solicitud GET o POST, todas se comunican según el protocolo TCP.

Ya sea una solicitud GET o una solicitud POST, la comunicación subyacente debe utilizar el protocolo TCP para garantizar la confiabilidad e integridad de los datos. Cuando un navegador o una aplicación envía una solicitud GET o POST, en realidad está utilizando el protocolo TCP para comunicarse con el servidor y garantizar una transmisión confiable de los datos de la solicitud y una recepción correcta de los datos de respuesta.

Por lo tanto, se puede decir que tanto las solicitudes GET como POST se basan en el protocolo TCP, y el protocolo TCP es responsable de proporcionar funciones de transmisión de datos en la capa inferior.

Entonces tanto get como post pueden enviar solicitudes:

Ya sea una solicitud GET o POST, así es como el cliente envía una solicitud al servidor. A través de estos dos métodos, el cliente puede solicitar recursos del servidor, enviar datos de formulario o realizar otras operaciones.

Para las solicitudes GET, el cliente agrega los parámetros de la solicitud a la cadena de consulta de la URL. Para las solicitudes POST, el cliente incluye los parámetros de la solicitud en el cuerpo de la solicitud para su transmisión.

Ya sea una solicitud GET o POST, se pueden utilizar para enviar solicitudes y comunicarse con el servidor. Dependiendo de las necesidades y operaciones específicas, podemos elegir el método adecuado para enviar la solicitud.

La publicación también puede obtener datos:

Aunque una solicitud POST se utiliza normalmente para enviar datos al servidor, también se puede utilizar para obtener datos. En algunos casos, el servidor puede requerir que el cliente obtenga recursos de datos específicos a través de una solicitud POST.

Cuando el cliente envía una solicitud POST, puede incluir parámetros o un cuerpo de solicitud en la solicitud para especificar los datos que se obtendrán. Una vez que el servidor recibe esta solicitud POST, puede procesarla de acuerdo con los parámetros o el cuerpo de la solicitud en la solicitud y devolver los recursos de datos correspondientes al cliente como respuesta. El cliente puede obtener los datos requeridos analizando la respuesta.

Por ejemplo, un ejemplo simple del uso de una solicitud POST para obtener datos:

POST /data HTTP/1.1
Host: example.com

param1=value1&param2=value2

En el ejemplo anterior, el cliente envía una solicitud POST a la ruta example.com/data y pasa los parámetros param1 y param2 en el cuerpo de la solicitud. El servidor procesa la solicitud y devuelve los datos correspondientes al cliente como respuesta.

Por lo tanto, aunque las solicitudes POST se utilizan normalmente para enviar datos, también se pueden utilizar para obtener datos, dependiendo de la implementación y las convenciones del lado del servidor.

Entonces, ¿cómo se obtienen los datos?

Cuando el cliente envía una solicitud GET, los parámetros de la solicitud se agregan a la cadena de consulta de la URL, es decir, los datos solicitados se codifican en pares clave-valor y se unen detrás de la URL. Una vez que el servidor recibe esta solicitud GET, puede procesarla de acuerdo con los parámetros de la solicitud y devolver los datos correspondientes al cliente como respuesta.

Por ejemplo, un ejemplo simple del uso de la solicitud GET para obtener datos:

GET /data?param1=value1&param2=value2 HTTP/1.1
Host: example.com

En el ejemplo anterior, el cliente envía una solicitud GET a la ruta example.com/data y pasa los parámetros param1 y param2 en la cadena de consulta URL. El servidor procesa la solicitud en función de estos parámetros y devuelve los datos correspondientes al cliente como respuesta.

Al analizar la respuesta, el cliente puede obtener los datos requeridos.

En resumen, la solicitud GET se utiliza principalmente para obtener datos del servidor, y los datos obtenidos se especifican pasando parámetros en la cadena de consulta URL. El servidor procesa la solicitud en función de estos parámetros y devuelve los datos correspondientes al cliente como respuesta.

Supongo que te gusta

Origin blog.csdn.net/m0_51553670/article/details/131426497
Recomendado
Clasificación