我开始学习Ratchet PHP。我在Ratchet网站(http://socketo.me/docs/hello-world)上做了第一个教程,它基本上只是打开一个服务器并将传入的短信发送给其他客户端。
我在Firefox中使用javascript控制台发送消息,然后它就像被驱逐一样。
同时,没有任何特殊原因我用telnet localhost 8080
连接到Ratchet服务器。当然,它不会执行任何操作,因为服务器需要WS
协议。
此时,telnet
是我的应用的无效客户端,这是显而易见的。所以我不想让它闲逛并使用我的服务器资源。
我可以为此目的做些什么?是否有一个选项或参数我可以指定断开此连接,或者我可以使用服务器端代码轻松检测到它并使用某种指纹/代理或超时将其断开连接?
服务器代码:
<?php
use Ratchet\Server\IoServer;
use Ratchet\Http\HttpServer;
use Ratchet\WebSocket\WsServer;
use MyApp\Chat;
require dirname(__DIR__) . '/vendor/autoload.php';
$server = IoServer::factory(
new HttpServer(
new WsServer(
new Chat()
)
),
8080
);
$server->run();