[PHP]Envoi de requête GET
noobiz
Messages postés
636
Statut
Membre
-
noobiz Messages postés 636 Statut Membre -
noobiz Messages postés 636 Statut Membre -
Bonjour,
Je souhaite envoyer une requete GET à une page, via une socket, mais je n'arrive pas a placer correctement les \r et les \r.
Quelqu'un pourrait-il m'aider?
Merci d'avance ;)
Requete:
GET /xxxxx?user=xxxx HTTP/1.1
Host: www.unsite.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.1;MEGAUPLOAD 1.0
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: __utma=112586503.2170444303783039200.1235772892.1235874605.1235902773.13; __utmz=112586503.1235902773.13.7.utmcsr=unsite.com|utmccn=(referral)|utmcmd=referral|utmcct=/connect.php
Je souhaite envoyer une requete GET à une page, via une socket, mais je n'arrive pas a placer correctement les \r et les \r.
Quelqu'un pourrait-il m'aider?
Merci d'avance ;)
Requete:
GET /xxxxx?user=xxxx HTTP/1.1
Host: www.unsite.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.1;MEGAUPLOAD 1.0
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: __utma=112586503.2170444303783039200.1235772892.1235874605.1235902773.13; __utmz=112586503.1235902773.13.7.utmcsr=unsite.com|utmccn=(referral)|utmcmd=referral|utmcct=/connect.php
A voir également:
- [PHP]Envoi de requête GET
- Get data back - Télécharger - Récupération de données
- Easy php - Télécharger - Divers Web & Internet
- Wmic path softwarelicensingservice get oa3xoriginalproductkey - Forum Windows Vista
- Votre envoi est réacheminé vers son site de distribution - Forum Consommation & Internet
- Programmer envoi sms - Guide
4 réponses
<?php
error_reporting(E_ALL);
echo "<h2>Connexion TCP/IP</h2><br />";
/* Lit le port du service WWW. */
$service_port = getservbyname('www' , 'tcp');
/* Lit l'adresse IP du serveur de destination */
$adresse = gethostbyname('www.unsite.com');
/* Crée une socket TCP/IP. */
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket < 0)
echo "socket_create() a échoué : raison : " . socket_strerror ($socket) . "<br />";
else
echo "OK.<br />";
echo "Essai de connexion à $adresse sur le port '$service_port'...";
$resultat = socket_connect($socket, $adresse, $service_port);
if ($resultat < 0)
echo "socket_connect() a échoué : raison : ($result) " . socket_strerror($result) . "<br />";
else
echo "OK.<br />";
$envoi = "MA REQUETE";
echo "Envoi de la requête HTTP GET...";
socket_write($socket, $envoi, strlen($envoi));
echo "OK.<br />";
echo "Lire la réponse : <br /><br />";
while ($reception = socket_read($socket, 2048))
echo $reception;
echo "Fermeture de la socket...";
socket_close($socket);
echo "OK.<br /><br />";
?>
Lors dela formulation de la requete GET (voir mon premier post), je ne sais pas ou placer les \n et les \r
error_reporting(E_ALL);
echo "<h2>Connexion TCP/IP</h2><br />";
/* Lit le port du service WWW. */
$service_port = getservbyname('www' , 'tcp');
/* Lit l'adresse IP du serveur de destination */
$adresse = gethostbyname('www.unsite.com');
/* Crée une socket TCP/IP. */
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket < 0)
echo "socket_create() a échoué : raison : " . socket_strerror ($socket) . "<br />";
else
echo "OK.<br />";
echo "Essai de connexion à $adresse sur le port '$service_port'...";
$resultat = socket_connect($socket, $adresse, $service_port);
if ($resultat < 0)
echo "socket_connect() a échoué : raison : ($result) " . socket_strerror($result) . "<br />";
else
echo "OK.<br />";
$envoi = "MA REQUETE";
echo "Envoi de la requête HTTP GET...";
socket_write($socket, $envoi, strlen($envoi));
echo "OK.<br />";
echo "Lire la réponse : <br /><br />";
while ($reception = socket_read($socket, 2048))
echo $reception;
echo "Fermeture de la socket...";
socket_close($socket);
echo "OK.<br /><br />";
?>
Lors dela formulation de la requete GET (voir mon premier post), je ne sais pas ou placer les \n et les \r
Je dis ça comme ça en freestyle mais le problème vient peut-être de la longueur du nom du cookie.
Sinon je vois pas.
Sinon je vois pas.
Non en fait c'est pas ca mon problème :)
$envoi = "HEAD / HTTP/1.0\r\n\r\n";
$envoi .= "Host: www.siteduzero.com\r\n";
$envoi .= "Connection: Close\r\n\r\n";
$reception = '';
Il y a des \r et des \n, mais moi je veux faire pareil avec la requete GET en haut, mais je ne sais pas ou et combien en placer a chaque ligne
$envoi = "HEAD / HTTP/1.0\r\n\r\n";
$envoi .= "Host: www.siteduzero.com\r\n";
$envoi .= "Connection: Close\r\n\r\n";
$reception = '';
Il y a des \r et des \n, mais moi je veux faire pareil avec la requete GET en haut, mais je ne sais pas ou et combien en placer a chaque ligne