EventHttpConnection::makeRequest
(PECL event >= 1.4.0-beta)
EventHttpConnection::makeRequest — Effectue une requête HTTP sur la connexion spécifiée
Description
Effectue une requête HTTP sur la connexion spécifiée.
Le paramètre type
sera une constante
EventHttpRequest::CMD_*.
Liste de paramètres
-
req
-
L'objet représentant la connexion sur laquelle la requête sera envoyée.
-
type
-
Une constante EventHttpRequest::CMD_*.
-
uri
-
L'URI associé à la requête.
Valeurs de retour
Retourne TRUE
en cas de succès, FALSE
sinon.
Exemples
Exemple #1 Exemple avec EventHttpConnection::makeRequest()
<?php function _request_handler($req, $base) { echo __FUNCTION__, PHP_EOL; if (is_null($req)) { echo "Timed out\n"; } else { $response_code = $req->getResponseCode(); if ($response_code == 0) { echo "Connexion refusée\n"; } elseif ($response_code != 200) { echo "Réponse inatendue : $response_code\n"; } else { echo "Succès : $response_code\n"; $buf = $req->getInputBuffer(); echo "Corps :\n"; while ($s = $buf->readLine(EventBuffer::EOL_ANY)) { echo $s, PHP_EOL; } } } $base->exit(NULL); } $address = "127.0.0.1"; $port = 80; $base = new EventBase(); $conn = new EventHttpConnection($base, NULL, $address, $port); $conn->setTimeout(5); $req = new EventHttpRequest("_request_handler", $base); $req->addHeader("Host", $address, EventHttpRequest::OUTPUT_HEADER); $req->addHeader("Content-Length", "0", EventHttpRequest::OUTPUT_HEADER); $conn->makeRequest($req, EventHttpRequest::CMD_GET, "/index.cphp"); $base->loop(); ?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
_request_handler Succès : 200 Corps : PHP, date: 2013-03-13T20:27:52+05:00
Voir aussi
- EventHttpRequest::addHeader() - Ajoute un en-tête HTTP aux en-têtes de la requête