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

關(guān)于數(shù)據(jù)壓縮,請問是否能夠動態(tài)改變websocket傳輸?shù)臄?shù)據(jù)類型,比如二進(jìn)制和文本同時支持

daming

gatewayworker里面看到:
// 當(dāng)客戶端連接上來時,設(shè)置連接的onWebSocketConnect,即在websocket握手時的回調(diào)
$gateway->onConnect = function($connection)
{
$connection->websocketType = Workerman\Protocols\Websocket::BINARY_TYPE_ARRAYBUFFER;
}
如果啟用gzip壓縮,則這里設(shè)置成BINARY_TYPE_ARRAYBUFFER,不過設(shè)置后,就變成這個用戶的連接永久都是這個傳輸類型了,對于小文本,幾個字符串的那種,想著就沒必要gzip壓縮了,請問是否能夠在傳輸小文本的時候,動態(tài)改變這個$connection->websocketType,變?yōu)槟J(rèn)的UTF8字符串傳輸呢?傳輸大文本如幾十KB那種,再通過gzip壓縮,動態(tài)設(shè)置為BINARY_TYPE_ARRAYBUFFER
另外如果可以動態(tài)改變的話,請問如何操作,使得H5頁面js,能夠做到這種通訊呢?
還請各位高手能夠指點一下,謝謝~

4052 3 0
3個回答

phpcreeper

開兩個不同的gateway,分別監(jiān)聽不同的端口,即對應(yīng)了不同的 $connection->websocketType.

  • 暫無評論
superchangme

BINARY_TYPE_ARRAYBUFFER本身也是可以傳輸json的
你在web客戶端轉(zhuǎn)一下就可以
var dataStrJson = String.fromCharCode.apply(null, new Uint8Array(e.data));
var data = JSON.parse(dataStrJson);

  • 暫無評論

怎么解析服務(wù)器端發(fā)送的過來的數(shù)據(jù)呢? Binary Frame (Opcode 2)

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