<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # 官方文檔: https://www.workerman.net/doc/gateway-worker/event-functions.html ![](https://img.kancloud.cn/f5/75/f5752b68e998b5ab63a467f4035e2f6e_1751x764.png) <br/><br/> ## eventHandler 設置使用哪個類來處理業務,默認值是Events,即默認使用Events.php中的Events類來處理業務。業務類至少要實現onMessage靜態方法,onConnect和onClose靜態方法可以不用實現。 <br/><br/> ``` onWorkerStart(BusinessWorker $businessWorker); 當businessWorker進程啟動時觸發。每個進程生命周期內都只會觸發一次。$businessworker->onWorkerStart和Event::onWorkerStart不會互相覆蓋,如果兩個回調都設置則都會運行。 onConnect(string $client_id); 當客戶端連接上gateway進程時(TCP三次握手完畢時)觸發的回調函數。 $client_id client_id固定為20個字符的字符串,用來全局標記一個socket連接,每個客戶端連接都會被分配一個全局唯一的client_id。 onWebSocketConnect(string $client_id, array $data); 當客戶端連接上gateway完成websocket握手時觸發的回調函數。 $client_id client_id固定為20個字符的字符串,用來全局標記一個socket連接,每個客戶端連接都會被分配一個全局唯一的client_id。 $data websocket握手時的http頭數據,包含get、server等變量 onWebSocketConnect(string $client_id, array $data); 當客戶端連接上gateway完成websocket握手時觸發的回調函數。 $client_id client_id固定為20個字符的字符串,用來全局標記一個socket連接,每個客戶端連接都會被分配一個全局唯一的client_id。 $data websocket握手時的http頭數據,包含get、server等變量 onMessage(string $client_id, mixed $recv_data); 當客戶端發來數據(Gateway進程收到數據)后觸發的回調函數 $client_id 全局唯一的客戶端socket連接標識 $recv_data 完整的客戶端請求數據,數據類型取決于Gateway所使用協議的decode方法返的回值類型 onClose(string $client_id); 客戶端與Gateway進程的連接斷開時觸發。不管是客戶端主動斷開還是服務端主動斷開,都會觸發這個回調。 onWorkerStop(BusinessWorker $businessWorker); 當businessWorker進程退出時觸發。每個進程生命周期內都只會觸發一次。 ``` # 代碼案例: ~~~ <?php class User { public static function onWorkerStart($business){ echo 'use onWorkerStart'."\n"; } //接收客戶端的ID與數據 $client_id為ID, $message為數據 public static function onMessage($client_id, $message){ echo '---$client_id-----'.$client_id.'-----$message-----'.$message."\n"; } //id public static function onConnect($client_id) { echo $client_id."\n"; } //客戶端斷開連接觸發 public static function onClose($client_id){ echo '----onClose 斷開鏈接---'.$client_id."\n"; } //當客戶端連接上gateway完成websocket握手時觸發的回調函數。 public static function onWebSocketConnect( $client_id, $data){ echo '----WebSocket---'.$client_id."\n"; var_dump($data); } } ~~~ ??
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看