请教一下各位:我在同一个实例里面放置两种协议,其中UDP拿来接收硬件推上来的数据,HTTP用于WEB显示数据。我该怎么操作?
[attach]357[/attach]
上图为我凭着感觉瞎写的,在connection部分不知道该怎么操作了 我希望实现的流程如下图:
[attach]358[/attach]
<?php require_once __DIR__ . '/../Workerman/Autoloader.php'; use Workerman\Worker; $ws_worker = new Worker('websocket://0.0.0.0:1234'); $ws_worker->onWorkerStart = function($ws_worker) { $udp_worker = new Worker('udp://0.0.0.0:5678'); $udp_worker->onMessage = function($udp_connection, $data)use($ws_worker) { foreach($ws_worker->connections as $ws_connection) { $ws_connection->send($data); } }; $udp_worker->listen(); }; $http_worker = new Worker('http://0.0.0.0:8080'); $http_worker->onMessage = function($http_connection, $http_data) { $http_connection->send(' <script> var ws = new WebSocket("ws://127.0.0.1:1234"); ws.onmessage = function(e){ alert(e.data) }; </script>'); }; Worker::runAll();
ws_worker count不为1的话,udp_worker需要开启端口复用吗?
这个例子中只能为1
浏览器访问8080端口, udp数据发送到5678端口,数据会在8080端口的网页上弹出来。
ws_worker count不为1的话,udp_worker需要开启端口复用吗?
这个例子中只能为1
浏览器访问8080端口,
udp数据发送到5678端口,数据会在8080端口的网页上弹出来。