This commit is contained in:
2021-09-18 16:54:39 +08:00
parent a6f056b8c8
commit 8f3b856bd6
63 changed files with 232 additions and 1585 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ namespace Kiri\Abstracts;
use Annotation\Annotation as SAnnotation;
use Database\Connection;
use Exception;
use Http\Route\Router;
use Http\Handler\Router;
use Server\Server;
use Kafka\KafkaProvider;
use Kiri\AspectManager;
+3 -4
View File
@@ -5,7 +5,6 @@ namespace Kiri\Abstracts;
use Exception;
use Http\Exception\ExitException;
use Kiri\Core\Json;
/**
@@ -19,11 +18,11 @@ class BaseGoto extends Component
* @param string $message
* @param int $statusCode
* @return mixed
* @throws ExitException
* @throws Exception
*/
public function end(string $message, $statusCode = 200): mixed
public function end(string $message, int $statusCode = 200): mixed
{
throw new ExitException(Json::to(12350, $message), $statusCode);
throw new Exception(Json::to(12350, $message), $statusCode);
}
}
+1 -1
View File
@@ -9,7 +9,7 @@ use Database\Connection;
use Database\DatabasesProviders;
use Http\Client\Client;
use Http\Client\Curl;
use Http\Route\Router;
use Http\Handler\Router;
use Server\Server;
use Kiri\Crontab\Producer;
use Kiri\Async;
-3
View File
@@ -5,11 +5,8 @@ namespace Kiri;
use Exception;
use Http\IInterface\Task;
use ReflectionException;
use Kiri\Abstracts\Component;
use Server\ServerManager;
use Server\SInterface\TaskExecute;
/**
* Class Async
+1 -1
View File
@@ -2,7 +2,7 @@
namespace Kiri\Cache\Base;
use Http\Context\Context;
use Http\Handler\Context;
use Kiri\Abstracts\Logger;
use Kiri\Events\EventProvider;
use Kiri\Exception\RedisConnectException;
+19 -11
View File
@@ -5,17 +5,21 @@ declare(strict_types=1);
namespace Kiri\Jwt;
use Closure;
use Annotation\Inject;
use Exception;
use Http\Route\MiddlewareAbstracts;
use Http\Message\ServerRequest;
use Kiri\Kiri;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\MiddlewareInterface;
use Psr\Http\Server\RequestHandlerInterface;
use Server\Constrict\ResponseInterface;
/**
* Class CoreMiddleware
* @package Kiri\Kiri\Route
* 跨域中间件
*/
class JWTAuthMiddleware extends MiddlewareAbstracts
class JWTAuthMiddleware implements MiddlewareInterface
{
@@ -23,27 +27,31 @@ class JWTAuthMiddleware extends MiddlewareAbstracts
public int $zOrder = 0;
#[Inject(ResponseInterface::class)]
public ResponseInterface $response;
/**
* @param RequestInterface $request
* @param Closure $next
* @return mixed
* @param ServerRequest $request
* @param RequestHandlerInterface $handler
* @return \Psr\Http\Message\ResponseInterface
* @throws Exception
*/
public function onHandler(RequestInterface $request, Closure $next): mixed
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): \Psr\Http\Message\ResponseInterface
{
$authorization = $request->getHeaderLine('Authorization');
if (empty($authorization)) {
throw new JWTAuthTokenException('JWT voucher cannot be empty.');
return $this->response->json(['code' => 401, 'JWT voucher cannot be empty.']);
}
if (!str_starts_with($authorization, 'Bearer ')) {
throw new JWTAuthTokenException('JWT Voucher Format Error.');
return $this->response->json(['code' => 401, 'JWT Voucher Format Error.']);
}
$authorization = str_replace('Bearer ', '', $authorization);
$jwt = Kiri::app()->getJwt();
if (!$jwt->validator($authorization)) {
throw new JWTAuthTokenException('JWT Validator fail.');
return $this->response->json(['code' => 401, 'JWT Validator fail.']);
}
return $next($request);
return $handler->handle($request);
}
}
+1 -1
View File
@@ -6,7 +6,7 @@ namespace Kiri\Pool;
use Closure;
use Database\Mysql\PDO;
use Exception;
use Http\Context\Context;
use Http\Handler\Context;
use Kiri\Abstracts\Component;
use Kiri\Kiri;
use Swoole\Error;
+1 -1
View File
@@ -5,7 +5,7 @@ namespace Kiri\Pool;
use Exception;
use Http\Context\Context;
use Http\Handler\Context;
use Kiri\Abstracts\Component;
use Kiri\Abstracts\Config;
use Kiri\Exception\ConfigException;
+1 -1
View File
@@ -8,7 +8,7 @@ namespace Kiri\Pool;
use Annotation\Inject;
use Closure;
use Exception;
use Http\Context\Context;
use Http\Handler\Context;
use Kiri\Abstracts\Component;
use Kiri\Events\EventProvider;
use Kiri\Exception\ConfigException;