PHP Класс Swoole\Protocol\WebSocket

Наследование: extends HttpServer
Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
$connections
$frame_list
$heart_time 数据包最大长度,超过此长度会被认为是非法请求
$keepalive 600s life time
$max_connect
$max_frame_size

Открытые методы

Метод Описание
afterResponse ( Request $request, Response $response ) Clean and fire onWsConnect().
cleanBuffer ( $fd ) 清理连接缓存区
cleanConnection ( ) clean all connection
close ( integer $fd, integer $code = self::CLOSE_NORMAL, string $reason = '' ) : boolean Close a connection.
doHandshake ( Request $request, Response $response ) : boolean Do the handshake.
newFrame ( string $message, integer $opcode = self::OPCODE_TEXT_FRAME, boolean $end = true ) : integer Write a frame.
onClose ( $serv, $client_id, $from_id )
onConnect ( $serv, $fd, $from_id )
onEnter ( $client_id )
onExit ( $client_id ) : mixed 客户端退出
onHttpRequest ( Request $request ) : Response Produce response for Http request.
onMessage ( $client_id, $message ) : mixed 收到消息
onReceive ( $server, $fd, $from_id, $data ) Read a frame.
onRequest ( Request $request ) : Response Request come
onWebSocketRequest ( Request $request ) : Response Produce response for WebSocket request.
onWsConnect ( $client_id, $request ) Called on WebSocket connection established.
opcodeSwitch ( $client_id, &$ws ) opcode switch
parseFrame ( &$buffer ) : array | boolean 解析数据帧 返回false表示解析失败,需要关闭此连接
send ( integer $client_id, string $message, integer $opcode = self::OPCODE_TEXT_FRAME, boolean $end = true ) : boolean Send a message.

Защищенные методы

Метод Описание
parseMessage ( $ws )

Описание методов

afterResponse() публичный Метод

Clean and fire onWsConnect().
public afterResponse ( Request $request, Response $response )
$request Swoole\Request
$response Swoole\Response

cleanBuffer() публичный Метод

清理连接缓存区
public cleanBuffer ( $fd )
$fd

cleanConnection() публичный Метод

clean all connection
public cleanConnection ( )

close() публичный Метод

Close a connection.
public close ( integer $fd, integer $code = self::CLOSE_NORMAL, string $reason = '' ) : boolean
$fd integer
$code integer
$reason string Reason.
Результат boolean

doHandshake() публичный Метод

Do the handshake.
public doHandshake ( Request $request, Response $response ) : boolean
$request Swoole\Request
$response Swoole\Response
Результат boolean

newFrame() публичный Метод

Write a frame.
public newFrame ( string $message, integer $opcode = self::OPCODE_TEXT_FRAME, boolean $end = true ) : integer
$message string Message.
$opcode integer Opcode.
$end boolean
Результат integer

onClose() публичный Метод

public onClose ( $serv, $client_id, $from_id )

onConnect() публичный Метод

public onConnect ( $serv, $fd, $from_id )

onEnter() публичный Метод

public onEnter ( $client_id )
$client_id

onExit() публичный Метод

客户端退出
public onExit ( $client_id ) : mixed
$client_id
Результат mixed

onHttpRequest() публичный Метод

Produce response for Http request.
public onHttpRequest ( Request $request ) : Response
$request Swoole\Request
Результат Swoole\Response

onMessage() абстрактный публичный Метод

收到消息
abstract public onMessage ( $client_id, $message ) : mixed
$client_id
$message
Результат mixed

onReceive() публичный Метод

Read a frame.
public onReceive ( $server, $fd, $from_id, $data )

onRequest() публичный Метод

Request come
public onRequest ( Request $request ) : Response
$request Swoole\Request
Результат Swoole\Response

onWebSocketRequest() публичный Метод

Produce response for WebSocket request.
public onWebSocketRequest ( Request $request ) : Response
$request Swoole\Request
Результат Swoole\Response

onWsConnect() публичный Метод

Called on WebSocket connection established.
public onWsConnect ( $client_id, $request )
$client_id
$request

opcodeSwitch() публичный Метод

opcode switch
public opcodeSwitch ( $client_id, &$ws )
$client_id
$ws

parseFrame() публичный Метод

解析数据帧 返回false表示解析失败,需要关闭此连接
public parseFrame ( &$buffer ) : array | boolean
$buffer
Результат array | boolean

parseMessage() защищенный Метод

protected parseMessage ( $ws )

send() публичный Метод

Send a message.
public send ( integer $client_id, string $message, integer $opcode = self::OPCODE_TEXT_FRAME, boolean $end = true ) : boolean
$client_id integer
$message string Message.
$opcode integer Opcode.
$end boolean Whether it is the last frame of the message.
Результат boolean

Описание свойств

$connections публичное свойство

public $connections

$frame_list публичное свойство

public $frame_list

$heart_time публичное свойство

数据包最大长度,超过此长度会被认为是非法请求
public $heart_time

$keepalive публичное свойство

600s life time
public $keepalive

$max_connect публичное свойство

public $max_connect

$max_frame_size публичное свойство

public $max_frame_size