最近
WebSocket是HTML5开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。
在WebSocket API中,浏览器和服务器只需要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道。两者之间就直接可以数据互相传送。
浏览器通过 JavaScript 向服务器发出建立 WebSocket 连接的请求,连接建立以后,客户端和服务器端就可以通过 TCP 连接直接交换数据。
当你获取 Web Socket 连接后,你可以通过send()方法来向服务器发送数据,并通过onmessage事件来接收服务器返回的数据。
服务器端
$text_worker = new Worker("websocket://0.0.0.0:2347");
//启动
$worker->onWorkerStart = function($worker){
}
//连接
$worker->onConnect = function($connection){
echo "new connection from ip " . $connection->getRemoteIp() . "\n";
};
//监听与发送信息
$worker->onMessage = function($connection, $data) {
$connection->send($data);
}
//关闭
$worker->onClose = function($connection){
echo "connection closed\n";
}
客户端
// 假设服务端ip为127.0.0.1
ws = new WebSocket("ws://127.0.0.1:2346");
ws.onopen = function() {
//alert("success");
ws.send('1111');
};
ws.onmessage = function(e) {
console.log(e.data);//返回发送过去的1111
};
领取专属 10元无门槛券
私享最新 技术干货