elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking (Moderador: toxeek)
| | |-+  [Tutorial] Comandos HTTP: GET y POST
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Tutorial] Comandos HTTP: GET y POST  (Leído 22,581 veces)
kiriost

Desconectado Desconectado

Mensajes: 58


www.godsys.com.ar Hacking y Programación


Ver Perfil WWW
[Tutorial] Comandos HTTP: GET y POST
« en: 30 Mayo 2011, 19:17 pm »

HTTP es el protocolo que utilizan los sitios webs para intercambiar datos con los clientes, o sea, los navegadores. Es decir, un navegador (cliente) contacta con un servidor web mediante una serie de comandos, y el servidor le contesta enviandole los datos requeridos.
HTTP consta de una serie de comandos mediante los cuales hace posible la conexión y la transacción. Yo les mostraré los 2 principales y los más importantes: GET y POST

Funcionamiento de un navegador
Para comenzar con la explicación primero tenemos que entender cómo funciona un navegador, que es la aplicación que nos permite conectarnos a un sitio web y ver su contenido.
Antes de presentarnos el contenido tal como lo vemos, el navegador realiza una "traducción", o más bien una interpretación del código HTML de la página para convertirlo en contenido legible para nuestra vista.

El código HTML consta de una serie de etiquetas encerradas entre < y > que cumplen diferentes funciones como darle un color, un estilo, un tamaño o una posición específica a una palabra, una imagen o algún otro objeto.
El navegador, mediante una serie de comandos (GETs y POSTs), se conecta al servidor de dicha web y le realiza una petición para que este le envíe el código HTML que es leído de los archivos .html que están dentro del sitio web (host). Entonces, si los comandos enviados son correctos, el servidor web accede a enviarle el código HTML. Y allí es cuando el navegador realiza su función de "traductor", intepretando las etiquetas HTML y conviertiendo el contenido que sea legible para nuestra vista.

Entonces es mediante estos comandos que el navegador interactúa con el servidor web para requerirle una página.

GET
Principalmente mediante este comando el navegador le pide al sitio que le envíe el código HTML para interpretarlo.
Aquí un ejemplo del comando GET que envía al servidor web:
Código:
GET / HTTP/1.1
Host: sitioweb.com
Y la función del servidor web es interpretar estos comandos para enviarle lo que requirió el navegador o el cliente, en este caso, el código html de la página principal del sitio web (generalmente se llama index.html, index.htm o index.php pero se coloca / ya que se refiere a la raíz del sitio web que sería la página principal).

POST
Este comando es utilizado para enviar datos al sitio web.

Los datos que se envían al sitio web son intepretados o procesados por funciones PHP, o de algún otro lenguaje de programación del lado del servidor, declaradas junto con el código HTML o en páginas aparetes dentro del sitio web.

Aquí un ejemplo del comando POST:
Código:
POST / HTTP/1.1
User-Agent: Mozilla/4.0
Host: sitioweb.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 29

user=usuario&pass=contrasenia

·POST / HTTP/1.1 Indica que se va a postear o enviar datos a la página principal del sitio web. También podría colocar /mensaje.php si fuera a enviar datos al archivo PHP llamado "mensaje.php" que se encuentre en la carpeta raíz del sitio. HTTP/1.1 indica la versión del protocolo http.
·User-Agent: Mozilla/4.0 Indica el navegador que estoy usando para conectarme. En este caso es la versión 4.0 de Mozilla Firefox. Podría colocar cualquier otro o inventarme uno.
·Host: sitioweb.com Indica el host, es decir la dirección del sitio web. Es necesaria.
·Content-Type: application/x-www-form-urlencoded Está indicando el tipo de contenido que voy a enviar. En este caso estoy enviando datos a un formulario (form), los cuales serán procesado por PHP.
·Content-Length: 29 Es el tamaño de los datos que estoy enviando. En este caso son la cantidad de letras que estoy enviando.
·user=usuario&pass=contrasenia Esto son los datos que estoy enviando. Los datos son "usuario" y "contrasenia", lo que declaré delante de estos son los nombres de las variables, por así decirlo, que el sitio me pide para procesar los datos dentro de estas. Los nombres de estas "variables" (user y pass) son declarados en el formulario creado en HTML (lo veremos más adelante).
En pocas palabras, lo que aquí le estoy diciendo al servidor web es que a "user" le doy el valor "usuario" y a "pass" le doy el valor "contrasenia", y el sitio luego procesará estos datos o variables para realizar las acciones correspondientes con estos. Lo formularios utilizados para registrarte dentro de un sitio web cumplen con esta función.

Ejemplo
Aquí un ejemplo de un formulario creado con código HTML:
Código
  1. <form action="procesar.php" method="post">
  2.  <input name="user" type="text">
  3.  <input name="pass" type="password">
  4.  <input value="Enviar" type="submit">
  5. </form>

Ejemplo de conexión usando GET mediante telnet:
Código:
telnet sitioweb.com 80
GET / HTTP/1.1
Host: sitioweb.com
[ENTER]

Ejemplo de conexión usando POST mediante telnet:
Código:
telnet sitioweb.com 80
POST /mensaje.php HTTP/1.1
User-Agent: Mozilla/4.0
Host: sitioweb.com
Content-Type: application/x-www-form-urlencoded
Content-Length:

nombre=eduardo&mensaje=hola%20soy%20eduardo&mail=eduardito%40hotmail%2ecom
[ENTER]
Como ya expliqué esto envía los datos nombre, mensaje y mail al archivo mensaje.php para que los procese.


Nota: Aquí termina el tutorial. Las dudas las pueden consultar por mensaje privado o envianome un mail. Lamento los errores de ortografía. Espero que les sirva.  ::)
En línea

http://www.godsys.com.ar > Programación. Hacking y Cracking. Sistemas. Desarrollo Web.
Java, C/C++, PHP, Python, Perl, HTML, Game-Hacking, Defacing, Desarrollo Web, GNU/Linux, y más
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
hydra http-post-form
Hacking
willy_69 1 4,761 Último mensaje 4 Noviembre 2012, 19:02 pm
por ameise_1987
[?] Conexión HTTP Post
Java
MeCraniDOS 4 2,916 Último mensaje 6 Marzo 2014, 13:32 pm
por ThinkByYourself
Ayuda con HTTP POST en C#
Desarrollo Web
Kaxperday 0 2,275 Último mensaje 3 Diciembre 2015, 20:28 pm
por Kaxperday
Enviar archivo con HTTP POST a servidor PHP.
Programación C/C++
Kaxperday 2 4,422 Último mensaje 13 Marzo 2016, 20:00 pm
por Kaxperday
Pruebas http post
Dudas Generales
Eddiefive 3 3,732 Último mensaje 4 Marzo 2018, 04:15 am
por Eddiefive
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines