PHP: POST directo a través de socket - Userlinux.net

Para hacer una petición POST a través de php -sin utilizar curl()- podemos hacerlo simplemente con sockets -con HTTPS si lo queremos seguro- y algo de suerte -para que todo funcione a la primera-: // Variables $host = www.host.com; $referer = http://www.host-referer.com; $path = /ruta/al/form.php; $data = Lo que vamos…

PHP: POST directo a través de socket

25.Sep.2008 ~ 0 Comentarios ~ 4784 Lecturas
Para hacer una petición POST a través de php -sin utilizar curl()- podemos hacerlo simplemente con sockets -con HTTPS si lo queremos seguro- y algo de suerte -para que todo funcione a la primera-:
// Variables
$host = "www.host.com";
$referer = "http://www.host-referer.com";
$path = "/ruta/al/form.php";
$data = "Lo que vamos a mandar por POST";

// Abriendo un socket seguro (443)
$fp = fsockopen('ssl://'.$host, 443, $errno,$errstr,30);

// Enviando cabeceras y datos
fputs($fp, "POST $path HTTP/1.0\r\n");
fputs($fp, "Host: $host\r\n");
fputs($fp, "Referer: $referer\r\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-length: ". strlen($data) ."\r\n");
fputs($fp, "Connection: close\r\n\r\n");
fputs($fp, $data);

// Recogiendo el resultado
$result = ''; 
while(!feof($fp))
    $result .= fgets($fp, 128);

// Cerramos y visualizamos respuesta
fclose($fp);
print_r($result);
Como veis no hace falta que la petición vaya envuelta en una variable si el servidor no lo espera de esa forma.
Categorías: programación
Tags: php socket

Comentarios


Todavía no hay comentarios

Comentarios


Los comentarios están cerrados: los comentarios se cierran automáticamente una vez pasados 15 días. Si quieres comentar algo acerca de la anotación, puedes hacerlo por e-mail.

Buscar

Cargando...

Últimos comentarios

  • minWi
  • isra
  • reidrac
  • r0sk
  • Rodrigo Rega
  • minWi
  • r0sk
  • reidrac
  • r0sk
  • deady
  • errece
  • r0sk
  • flexo
  • r0sk
  • MarcosBL

Moneting

Valor de mi cuenta de Facebook según Moneting
Valor de mi cuenta de Twitter según Moneting

Tagcloud

barça rfilms linux vacaciones freebsd films 2007 bake 2008 programación iphone blogs apple frases games rsidenotes mac ssh meme personal opinion nintendo software futbol bsd debian twitt ubuntu humor django seguridad cake mundial macosx openbsd sysadmin alemania_2006 cakephp lucux felicidades cumpleaños userlinux hack ps3 sidenotes canción champions twitter php deportes conciertos web league blog mysql lugo bash juegos ds blogsfera

Archivo

Social

Enlaces de interés