¿Qué es la transferencia de datos del método get. Atributo y método de acción
Hay dos conceptos comunes a casi todos los programas: procesar datos de entrada y generar resultados. En esta página, nos centraremos en manejar la entrada de programas CGI. Primero, de dónde proviene la entrada y, segundo, cómo se pasa la entrada al servidor. Para escribir programas CGI efectivos, debe tener una comprensión clara de estas cosas.
Un poco sobre HTTP
El servidor acepta tres tipos de solicitudes: GET, POST y HEAD. La solicitud del programa al servidor web se ve así:
OBTENER /index.html HTTP / 1.0
La primera parte, en este caso GET, es el método de solicitud, la segunda, index.html, es la URL solicitada y la tercera, HTTP / 1.0, es el protocolo utilizado por el cliente.
Los dos métodos de solicitud principales son GET y POST. Estos son los mismos métodos que están disponibles para usted al crear un formulario. El navegador rara vez utiliza el método HEAD porque solo solicita el encabezado de respuesta y, en este caso, el cuerpo de la respuesta no se envía. Por ejemplo, para comprobar si la página ha cambiado, el navegador puede solicitar un encabezado, pero esto no genera una comunicación completa.
Método GET
De forma predeterminada, la solicitud utiliza el método GET. El método POST solo se utiliza cuando se especifica explícitamente en la solicitud del formulario. Es muy importante que un programador CGI comprenda que cuando se realiza una solicitud GET, los datos del formulario se envían al servidor junto con la URL. Los servidores web que admiten CGI copian estos datos en Variable ambiental llamado QUERY_STRING. Después de eso, el programa CGI es responsable de obtener los datos de la variable de entorno y procesarlos.
La URL con la cadena de consulta se ve así:
Http://www.domen-name.com/login.pl?nick=maks&psw=parol
¿Firmar? separa la cadena de consulta de la URL real del recurso; nick y psw son variables que se pasan al servidor, maks y parol son sus valores, respectivamente.
Método POST
El método POST se utiliza cuando se especifica explícitamente en el atributo METHOD del formulario. A diferencia del método GET, POST no coloca datos en la URL, sino en el cuerpo de la solicitud. Una solicitud POST se parece mucho a una respuesta HTTP. La primera línea es una solicitud HTTP estándar que especifica el método POST. Puede contener los encabezados adicionales necesarios, separados del cuerpo de la solicitud por una línea vacía.
Cuando se usa el método POST, el cuerpo de la solicitud se pasa al programa como entrada estándar.
Elegir entre GET y POST
Está claro que al desarrollar formularios, un programador CGI se enfrentará a la cuestión de cuál de estos métodos utilizar. En la mayoría de los casos, ambos métodos son aplicables y ambos funcionarán bien. Sin embargo, hay situaciones en las que el uso de uno u otro método aporta ciertas ventajas.
Veamos algunas situaciones en las que tiene sentido preferir el método GET o POST.
- Si desea que su programa sea llamado por referencia, debe preferir el método GET.
- Si no desea que los argumentos pasados a su programa se escriban en el archivo de registro del servidor, utilice el método POST. Por ejemplo, si un formulario requiere un nombre de usuario y una contraseña, probablemente no desee que los nombres y las contraseñas se guarden en el archivo del informe. Además, no es aconsejable pasar la contraseña como parte de la URL.
- Si su formulario tiene dimensiones significativas, por ejemplo, tiene cuadros de texto con notas y comentarios, debe usar el método POST. En términos generales, también puede usar el método GET en este caso, pero luego puede encontrar restricciones de tamaño de URL que son diferentes para diferentes sistemas operativos y navegadores (limitados por el tamaño de las variables de entorno). Es más fácil utilizar el método POST.
- Si su formulario contiene un campo de archivo, use el método POST. Además, en este caso, debe establecer el valor del atributo ENCTYPE en multipart / form-data.
OBTENER métodos y POST a HTTP y HTTPS son dos de los métodos más populares utilizados para transferir datos de un cliente a un servidor mediante el protocolo HTTP (Protocolo de transferencia de hipertexto). Tanto GET como POST se pueden usar para enviar una solicitud y recibir una respuesta, pero existe una diferencia significativa entre los dos.
La diferencia entre las solicitudes GET y POST en HTTP o HTTPS es una pregunta popular en todas las entrevistas de programación web. Dado que HTML es independiente de la tecnología de servidor web como Java, ASP o PHP y HTTP es el protocolo principal en el espacio de Internet, la importancia de comprender los métodos GET y POST no puede ignorarse claramente. En este artículo, veremos qué es un método HTTP GET, qué es un método HTTP POST, cuándo usar una solicitud en particular y cuál es la diferencia entre ellos. Analicemos cada concepto por separado.
¿Qué es HTML?
HTML es el lenguaje utilizado para crear páginas web. El hipertexto se refiere a los hipervínculos que puede contener una página HTML. El lenguaje de marcado se refiere a la forma en que se utilizan las etiquetas para definir el diseño de la página y los elementos de la página.
abajo esta el Ejemplo HTML que se utiliza para definir una página web básica con un encabezado y un párrafo de texto:
<Голова>
<Название>TechTerms.com название>
HEAD>
<Тело>
Este es un ejemplo de un párrafo en HTML. p>
Body>
Html>
La primera línea define el tipo de contenido que contiene el documento.,
y que están todos incluidos en el ejemplo anterior. El título de la página, los metadatos y los enlaces de archivos de anclaje se colocan entre las etiquetas. El contenido real de la página está entre las etiquetas. .
La web ha experimentado muchos cambios en las últimas décadas, pero HTML siempre ha sido el lenguaje principal utilizado para desarrollar páginas web. Curiosamente, mientras que los sitios web se han vuelto más avanzados e interactivos, HTML se ha vuelto más simple. Si compara el código fuente de una página HTML5 con una página similar escrita en HTML 4.01 o XHTML 1.0, habrá menos código en la página HTML5. Esto se debe a que el HTML moderno se basa en hojas de estilo en cascada o JavaScript para formatear casi todos los elementos de una página.
Muchos sitios web dinámicos generan páginas web sobre la marcha utilizando un lenguaje de programación del lado del servidor como PHP o ASP. Sin embargo, incluso las páginas dinámicas deben formatearse con HTML. Por lo tanto, los lenguajes de secuencias de comandos suelen generar HTML que se envía al navegador web.
El protocolo de transferencia de hipertexto HTTP está diseñado para la comunicación entre clientes y servidores y funciona como un protocolo de solicitud-respuesta.
El navegador web puede ser el cliente y la aplicación en la computadora que aloja el sitio web puede ser el servidor.
El cliente (navegador) envía una solicitud HTTP al servidor, el servidor devuelve una respuesta que contiene información sobre el estado de la solicitud y también puede contener el contenido solicitado.
Dos métodos de solicitud GET y POST
Dos métodos de uso común para solicitud-respuesta entre cliente y servidor:
GET: solicita datos del recurso especificado;
POST: envía datos para su procesamiento al recurso especificado.
Traducir GET y POST significa literalmente obtener y posprocesar.
Más acerca de HTTP
HTTP es el protocolo utilizado para transferir datos a través de Internet. Es parte del paquete de Protocolo de Internet y define los comandos y servicios utilizados para transferir datos de páginas web.
HTTP usa el modelo servidor-cliente. El cliente puede ser una computadora doméstica, portátil o dispositivo móvil... El servidor HTTP suele ser un servidor web con software servidor web como Apache o IIS. Cuando un usuario accede a un sitio web, el navegador envía una solicitud al servidor web correspondiente y responde con un código de estado HTTP. Si la URL es válida y se proporciona la conexión, el servidor enviará la página web y los archivos asociados al navegador.
Los códigos de estado HTTP comunes incluyen:
200 - solicitud exitosa (la página web existe);
301: se mueve constantemente (a menudo redirige a una nueva URL);
401 - solicitud no autorizada (se requiere autorización);
500 — Error interno servidor (a menudo llamado mala configuración servidor).
POST y GET en HTTP
HTTP define los comandos GET y POST que se utilizan para procesar envíos de formularios en sitios web. El comando CONNECT se utiliza para facilitar una conexión segura cifrada mediante SSL. Las conexiones HTTP cifradas se realizan a través de HTTPS, una extensión HTTP diseñada para transferencias de datos seguras.
Las URL que comienzan con "http: //" son accesibles a través de protocolos de transferencia de hipertexto estándar y utilizan el puerto 80 de forma predeterminada. Las URL que comienzan con "https: //" son accesibles a través de Conexión HTTPS y a menudo usan el puerto 443.
CORREO
POST es una serie controles del sistema ejecutado por computadoras y otros dispositivos electrónicos cuando están encendidos. Los resultados de la prueba pueden mostrarse en la pantalla, mostrarse mediante LED parpadeantes o simplemente registrarse internamente. V sistemas informáticos la operación POST se realiza al comienzo de la secuencia de inicio. Si todas las pruebas pasan, el resto del proceso de inicio continuará automáticamente.
Los sistemas operativos Mac y Windows ejecutan POST cada vez que la computadora arranca o se reinicia. Verificaciones de escaneo Hardware y garantiza que el procesador, la RAM y los dispositivos de almacenamiento funcionen correctamente. Si se produce un error durante la POST, el proceso de inicio puede pausarse o detenerse por completo, y el monitor puede mostrar un mensaje que indica que los errores de la POST a menudo se muestran en la pantalla de información del BIOS. Se pueden generar como códigos criptográficos como "08" o como un mensaje del sistema como "Error de memoria del sistema en el desplazamiento". En Mac, los errores de POST a menudo se indican mediante gráficos simples, como un icono de carpeta rota que indica que no se encontró ningún dispositivo de arranque.
Manifestaciones fisicas
En algunos casos, es posible que la pantalla de la computadora ni siquiera se encienda antes de los errores de la POST. Si esto sucede, los códigos de error se pueden mostrar mediante LED parpadeantes o señales de sonido... Por ejemplo, IMac de Apple reproducirá tres tonos consecutivos, hará una pausa de cinco segundos y luego repetirá los tonos cuando se detecte una mala RAM durante el inicio. La mayoría de las PC también emiten un pitido cuando se detectan errores de POST, aunque cada fabricante utiliza sus propios códigos.
POST es un término bastante técnico que solo lo utilizan técnicos informáticos sobre una base regular. Sin embargo, este es un buen acrónimo, ya que ayuda a comprender mejor los mensajes de error que pueden aparecer en las computadoras u otros dispositivos electrónicos... Si su computadora no se inicia debido a un error POST, puede usar un dispositivo diferente para encontrar el significado y la causa del error en el sitio web del fabricante. Luego, puede tomar la acción apropiada: retire el módulo de memoria o reinstale la tarjeta de video y luego reinicie el equipo.
OBTENER
POST también es un método para pasar variables Formularios HTML de una página web a otra sin mostrarlas en la barra de direcciones. Un método alternativo es GET, que agrega valores a la URL. Las solicitudes HTTP POST proporcionan datos adicionales del cliente (navegador) al servidor en el cuerpo del mensaje. Por el contrario, las solicitudes GET incluyen todos los datos necesarios en la URL. Los formularios en HTML pueden usar cualquier método especificando método = POST o método = GET (predeterminado) en el elemento
Si el usuario ingresa cualquier texto en el campo de texto y hace clic en el botón "Enviar", entonces la variable de texto con el valor del contenido ingresado por el usuario se enviará al servidor.
Solicitudes POST y GET en palabras simples
Esta variable será enviada por el método POST.
Si escribe en la forma como esta: