This commit is contained in:
freek 2018-11-27 21:14:08 +01:00
parent c90822557b
commit fe811549a2
3 changed files with 18 additions and 14 deletions

View File

@ -37,9 +37,9 @@ return [
], ],
/* /*
* The maximum request size that is allowed for an incoming websocket request. * The maximum request size in bytes that is allowed for an incoming websocket request.
*/ */
'maxRequestSize' => 256000, 'maxRequestSize' => 1024 * 250,
/* /*
* Define the optional SSL context for your websocket connections. * Define the optional SSL context for your websocket connections.

View File

@ -10,7 +10,6 @@ use Psr\Http\Message\RequestInterface;
class OriginCheck implements HttpServerInterface class OriginCheck implements HttpServerInterface
{ {
use CloseResponseTrait; use CloseResponseTrait;
/** @var \Ratchet\MessageComponentInterface */ /** @var \Ratchet\MessageComponentInterface */

View File

@ -25,6 +25,11 @@ class Router
$this->routes = new RouteCollection; $this->routes = new RouteCollection;
} }
public function getRoutes(): RouteCollection
{
return $this->routes;
}
public function websocket(string $uri, $action) public function websocket(string $uri, $action)
{ {
if (!is_subclass_of($action, MessageComponentInterface::class)) { if (!is_subclass_of($action, MessageComponentInterface::class)) {
@ -81,27 +86,27 @@ class Router
} }
/** /**
* @param $action * @param string $action
* *
* @return \Ratchet\WebSocket\WsServer|\Ratchet\Http\HttpServerInterface * @return \Ratchet\WebSocket\WsServer|\Ratchet\Http\HttpServerInterface
*/ */
protected function wrapAction($action) protected function wrapAction(string $action)
{ {
if (is_subclass_of($action, MessageComponentInterface::class)) { if (is_subclass_of($action, MessageComponentInterface::class)) {
$app = app($action); return $this->createWebSocketsServer($action);
if (MessageLogger::isEnabled()) {
$app = MessageLogger::decorate($app);
}
return new WsServer($app);
} }
return app($action); return app($action);
} }
public function getRoutes(): RouteCollection protected function createWebSocketsServer(MessageComponentInterface $action): WsServer
{ {
return $this->routes; $app = app($action);
if (MessageLogger::isEnabled()) {
$app = MessageLogger::decorate($app);
}
return new WsServer($app);
} }
} }