如何在Ratchet PHP上立即断开无效客户端?

时间:2015-07-05 19:14:29

标签: php websocket ratchet

我开始学习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();

0 个答案:

没有答案