Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f67fd2a476 |
+3
-13
@@ -5,6 +5,7 @@ namespace Coroutine\Server;
|
|||||||
use Kiri\Di\Context;
|
use Kiri\Di\Context;
|
||||||
use Kiri\Di\Inject\Container;
|
use Kiri\Di\Inject\Container;
|
||||||
use Kiri\Router\Constrict\ConstrictRequest;
|
use Kiri\Router\Constrict\ConstrictRequest;
|
||||||
|
use Kiri\Router\Router;
|
||||||
use Psr\Http\Message\RequestInterface;
|
use Psr\Http\Message\RequestInterface;
|
||||||
use Swoole\Coroutine;
|
use Swoole\Coroutine;
|
||||||
use Swoole\Coroutine\Http\Server;
|
use Swoole\Coroutine\Http\Server;
|
||||||
@@ -38,16 +39,12 @@ abstract class Websocket
|
|||||||
$server = new Server($config->host, $config->port, false);
|
$server = new Server($config->host, $config->port, false);
|
||||||
$this->configureServer($server);
|
$this->configureServer($server);
|
||||||
|
|
||||||
$server->handle($config->normalizePath($config->websocketPath), fn(Request $request, Response $ws) => $this->handler($request, $ws));
|
$server->handle('/', fn(Request $request, Response $ws) => $this->handler($request, $ws));
|
||||||
if ($config->exposeOnlineLists) {
|
|
||||||
$server->handle($config->normalizePath($config->onlineListPath), fn(Request $request, Response $ws) => $this->getLists($request, $ws));
|
|
||||||
}
|
|
||||||
|
|
||||||
echo 'websocket server start at ' . $config->host . ':' . $config->port . PHP_EOL;
|
echo 'websocket server start at ' . $config->host . ':' . $config->port . PHP_EOL;
|
||||||
$server->start();
|
$server->start();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param Request $request
|
* @param Request $request
|
||||||
* @param Response $ws
|
* @param Response $ws
|
||||||
@@ -87,7 +84,6 @@ abstract class Websocket
|
|||||||
{
|
{
|
||||||
$upgraded = false;
|
$upgraded = false;
|
||||||
$userId = null;
|
$userId = null;
|
||||||
$fd = null;
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$psr7Request = $this->authorizeConnection($request);
|
$psr7Request = $this->authorizeConnection($request);
|
||||||
@@ -268,13 +264,7 @@ abstract class Websocket
|
|||||||
default => 'Internal Server Error',
|
default => 'Internal Server Error',
|
||||||
};
|
};
|
||||||
|
|
||||||
error_log(sprintf(
|
error_log(sprintf('[%s] %s in %s:%d', static::class, $throwable->getMessage(), $throwable->getFile(), $throwable->getLine()));
|
||||||
'[%s] %s in %s:%d',
|
|
||||||
static::class,
|
|
||||||
$throwable->getMessage(),
|
|
||||||
$throwable->getFile(),
|
|
||||||
$throwable->getLine(),
|
|
||||||
));
|
|
||||||
|
|
||||||
if ($upgraded) {
|
if ($upgraded) {
|
||||||
@$ws->close();
|
@$ws->close();
|
||||||
|
|||||||
Reference in New Issue
Block a user