国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

作為ws客戶端,如何關(guān)閉連接,然后重新連接一個新地址?

dignfei

因為ws地址類似這樣:ws://127.0.0.1:8000/ws/?token=eyJhbGciOiJIUzI1NiIsInR5cCI6Ikp

token每隔幾分鐘就會變,需要改變token,改變ws的連接地址。

如何在關(guān)閉當(dāng)前連接,創(chuàng)建一個新連接?

workerman有一個很大的問題,就是只能創(chuàng)建,無法關(guān)閉。比如創(chuàng)建一個http服務(wù),就只能一直開著,沒有關(guān)閉的功能,無法靈活調(diào)整

1729 3 1
3個回答

li914

可以主動關(guān)閉啊 close 方法

  • dignfei 2022-02-28

    這個是作為服務(wù)端的時候用的,關(guān)閉別人。現(xiàn)在是作為客戶端,關(guān)閉自己,然后關(guān)閉?

  • li914 2022-02-28

    客戶端也可以關(guān)閉啊 連接時獲取到了連接對象 connection 調(diào)用connection 上的 關(guān)閉連接方法

    $udp_connection = new AsyncUdpConnection('udp://127.0.0.1:1234');
    $udp_connection->onConnect = function(AsyncUdpConnection $udp_connection){
    $udp_connection->send('hi');
    };
    $udp_connection->onMessage = function(AsyncUdpConnection $udp_connection, $data){
    // 收到服務(wù)端返回的數(shù)據(jù) hello
    echo "recv $data\r\n";
    // 關(guān)閉連接
    $udp_connection->close();
    };
    $udp_connection->connect();

xiuwang

close是關(guān)閉連接,然后重新new AsyncTcpConnection,重新設(shè)置onMessage等回調(diào)就行了

xiuwang
$worker->onWorkerStart = function(){
    // 每隔10秒用新token去連一次
    $token = md5(time());
    Timer::add(10, 'connect_with_token', [$token]);
};

function connect_with_token($token)
{
    static $connection;
    if ($connection) $connection->close();
    $connection = new AsyncTcpConnection('ws://127.0.0.1:8000/ws/?token='.$token);
    $connection->onMessage = function($connection, $data){
        var_dump($data);
    };
    $connection->connect();
}
  • 暫無評論
年代過于久遠(yuǎn),無法發(fā)表回答
??