我不熟悉二进制操作所以我需要你的帮助......我在互联网上找到了一个例子,但问题是,当我发送大量文本时,ws.onmessage
不会触发
以下是我使用的代码:
private function _encode($text)
{
// 0x1 text frame (FIN + opcode)
$b1 = 0x80 | (0x1 & 0x0f);
$length = strlen($text);
if($length <= 125)
$header = pack('CC', $b1, $length);
elseif($length > 125 && $length < 65536)
$header = pack('CCS', $b1, 126, $length);
elseif($length >= 65536)
$header = pack('CCN', $b1, 127, $length);
return $header.$text;
}
案文:
使用HTML5 WebSocketRock将其与HTML5 WebSocketRock一起使用 HTML5 WebSocketRock它与HTML5 WebSocketRock它与HTML5 WebSocketRock它与HTML5 WebSocketRock一起使用HTML5 WebSocketRock 它与HTML5 WebSocketRock一起使用HTML5 WebSocketRock它与HTML5 WebSocketRock它与HTML5 WebSocketRock一起使用HTML5 WebSocketRock 它与HTML5 WebSocketRock一起使用HTML5 WebSocketRock它与HTML5 WebSocketRock它与HTML5 WebSocketRock一起使用HTML5 WebSocketRock 它与HTML5 WebSocketRock一起使用HTML5 WebSocketRock它与HTML5 WebSocketRock它与HTML5 WebSocket
我也在其他版本的phpwebsockets
实现中尝试了相同的长文本,并且工作正常。