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

workerman的mqtt客戶是否支持websocket wss

luhuan

問題描述

使用webman的自定義進(jìn)程,啟動(dòng)mqtt客戶端報(bào)錯(cuò)

程序代碼

//webman進(jìn)程文件
return [
    //省略框架自帶的配置
    'websocket_test' => [
        'handler' => \app\service\mqttClient::class,
    ],
];

//mqtt客戶端
<?php
namespace app\service;
use Workerman\Mqtt\Client;

class mqttClient
{
    public function onWorkerStart()
    {
        $options = [
            'client_id' => '"MqttClient_'.strval(round(microtime(true) * 1000)),
            'username' => '***',
            'password' => '********',
            'ssl' => true,
            'debug' => true,
        ];
        $mqtt = new Client('websocket://s.sportnanoapi.com:443', $options);
        $mqtt->onConnect = function($mqtt) {
            $mqtt->subscribe('test', ['qos'=>1]);
        };
        $mqtt->onError = function ($e) {
            echo "錯(cuò)誤信息".$e->getMessage()."\n";
        };
        $mqtt->onMessage = function($topic, $content){
            echo "topic:$topic content:$content\n";
        };
        $mqtt->connect();
    }
}

報(bào)錯(cuò)信息

-> Try to connect to websocket://s.sportnanoapi.com:443
-- Tcp connection established
-> Send CONNECT package client_id:"MqttClient_1704030527628 username:*** password:*** clean_session:1 protocol_name:MQTT protocol_level:4
<- Recv PUBACK package, message_id:21584
buffer:636861727365743d5554462d380d0a436f6e74656e742d4c656e6774683a2031 lenth:25448 not enough for unpackString
ErrorException: unpack(): Type n: not enough input, need 2, have 0 in /home/www/new_webman/vendor/workerman/mqtt/src/Protocols/Mqtt.php:450
Stack trace:
#0 [internal function]: {closure}()
#1 /home/www/new_webman/vendor/workerman/mqtt/src/Protocols/Mqtt.php(450): unpack()
#2 /home/www/new_webman/vendor/workerman/mqtt/src/Protocols/Mqtt.php(301): Workerman\Mqtt\Protocols\Mqtt::readShortInt()
#3 /home/www/new_webman/vendor/workerman/workerman/Connection/TcpConnection.php(646): Workerman\Mqtt\Protocols\Mqtt::decode()
#4 /home/www/new_webman/vendor/workerman/workerman/Events/Select.php(311): Workerman\Connection\TcpConnection->baseRead()
#5 /home/www/new_webman/vendor/workerman/workerman/Worker.php(1635): Workerman\Events\Select->loop()
#6 /home/www/new_webman/vendor/workerman/workerman/Worker.php(1426): Workerman\Worker::forkOneWorkerForLinux()
#7 /home/www/new_webman/vendor/workerman/workerman/Worker.php(1400): Workerman\Worker::forkWorkersForLinux()
#8 /home/www/new_webman/vendor/workerman/workerman/Worker.php(560): Workerman\Worker::forkWorkers()
#9 /home/www/new_webman/vendor/workerman/webman-framework/src/support/App.php(131): Workerman\Worker::runAll()
#10 /home/www/new_webman/start.php(4): support\App::run()
#11 {main}

截圖報(bào)錯(cuò)信息里報(bào)錯(cuò)文件相關(guān)代碼

截圖

操作系統(tǒng)及workerman/webman等框架組件具體版本

這里寫具體的系統(tǒng)環(huán)境相關(guān)信息
php=8.2。webman=1.5.13。workerman/mqtt=1.5

1378 1 0
1個(gè)回答

walkor 打賞

mqtt客戶端默認(rèn)不支持websocket。
不過有開發(fā)者實(shí)現(xiàn)了,見 http://wtbis.cn/a/1466

  • 暫無評(píng)論
年代過于久遠(yuǎn),無法發(fā)表回答
??