onError
Description:
callback Worker::$onError
Déclenché lorsqu'une erreur se produit lors de la connexion du client.
Les types d'erreurs actuellement sont :
-
Échec de l'appel à
Connection::senden raison de la déconnexion du client (déclenche immédiatement le rappelonClose)(code:WORKERMAN_SEND_FAIL msg:client closed) -
Après avoir déclenché
onBufferFull(le tampon d'envoi est plein), siConnection::sendest appelé et que le tampon d'envoi est toujours plein, cela entraîne un échec d'envoi (ne déclenche pas le rappelonClose)(code:WORKERMAN_SEND_FAIL msg:send buffer full and drop package) -
Échec de la connexion asynchrone avec
AsyncTcpConnection(déclenche immédiatement le rappelonClose)(code:WORKERMAN_CONNECT_FAIL msg:stream_socket_client retourne le message d'erreur)
Paramètres de la fonction de rappel
$connection
Objet de connexion, c'est-à-dire une instance de TcpConnection, utilisée pour opérer sur la connexion client, comme envoyer des données, fermer la connexion, etc.
$code
Code d'erreur
$msg
Message d'erreur
Exemple
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';
$worker = new Worker('websocket://0.0.0.0:8484');
$worker->onError = function(TcpConnection $connection, $code, $msg)
{
echo "error $code $msg\n";
};
// Exécuter le worker
Worker::runAll();
Remarque : En plus d'utiliser des fonctions anonymes comme rappels, vous pouvez également vous référer ici pour utiliser d'autres écritures de rappels.