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

如何在websocket的基礎(chǔ)上自定義協(xié)議?

zhouciming

這個框架提供的自定義協(xié)議非常好用,但應(yīng)該是在tcp基礎(chǔ)上的自定義協(xié)議吧!
?
我現(xiàn)在的實際應(yīng)用場景是想在websocket基礎(chǔ)上再添加自定義的二進制協(xié)議,所以在Protocols下自定義協(xié)議已經(jīng)無效了,不知道有沒有簡便的方式實現(xiàn)我的這種需求呢?

5902 1 0
1個回答

six

在websocket協(xié)議基礎(chǔ)上包裝一層就好了吧

class MyWebSocket{
    public static function input($buffer, $connection) {
         return Websocket::input($buffer, $connection);
    }

    public static function encode($data, $connection) {
        $buffer = WebSockt::encode($data, $connection);
        return your_encode($buffer);
    }

    public static function decode($buffer, $connection) {
        $data = Websocket::decode($buffer, $connection);
        return your_decode($data);
    }
}
  • zhouciming 2018-10-13

    真想給你一萬個贊, 非常簡潔明了, 正是我想要的, 太感謝了!

  • zhouciming 2018-10-15

    我實際應(yīng)用了下,發(fā)現(xiàn)你這個示例有不合適的地方,不知道對不對,你看看!

    1. encode接口,應(yīng)該是先my_encode($data), 再調(diào)用Websocket::encode(),你覺得呢?
    2. input接口,那樣寫似乎有問題,我實際跑的時候,接收端未收到數(shù)據(jù), 因為調(diào)用Websocket::encode()后,返回的數(shù)據(jù)變?yōu)?'了!
  • six 2018-10-15

    encode應(yīng)該先your_encode($buffer),再WebSocket::encode

年代過于久遠,無法發(fā)表回答
??