Je veux envoyer des demandes XML via un protocole EPP à un registrar et obtenir des réponses, la connexion est réussie, mais quand j'arrive à fread($fp)
, il faut une éternité pour charger.Réponse socket fread PHP prend une éternité
Existe-t-il un moyen de le rendre rapide et d'obtenir une réponse du bureau d'enregistrement? J'utilise le code ci-dessous dans un plugin hostbill.
/** open socket* */
$fp = fsockopen("tcp://registrarwebsite.com", 700, $errno, $errstr, 200);
stream_set_blocking($fp, true);
stream_context_set_option($fp, 'ssl', 'verify_host', true);
stream_context_set_option($fp, 'ssl', 'verify_peer', true);
stream_context_set_option($fp, 'ssl', 'allow_self_signed', false);
stream_context_set_option($fp, 'ssl', 'local_cert', __DIR__ . '/ma_cert.pem');
stream_context_set_option($fp, 'ssl', 'local_pk', __DIR__ . '/ma_key.pem');
// $secure = stream_socket_enable_crypto($fp, true, STREAM_CRYPTO_METHOD_TLS_CLIENT);
// stream_set_blocking($fp, false);
if (!$fp) {
$this->addError('Il y a une erreur dans la connexion: ' . $errno . ' ' . $errstr);
return false;
} else {
$xml = htmlentities($this->prepareXMLRequest($xml));
fwrite($fp, $xml);
$out = fread($fp, 1024);
fclose($fp);
$out1 = htmlentities($fp);
$this->addError('<span style="color: green !important">Connexion se fait avec succes, le code retourné est : </span> ' . $out1);
_dans quoi? Un vaisseau de fusée? – AbraCadaver
Désolé, je n'ai pas compris votre question? – SmootQ
Le titre: "_PHP socket fread réponse prend pour toujours ** dans un ** _", donc _in a_ quoi? Dans une fusée, dans une machine à voyager dans le temps, dans le vide? – AbraCadaver