This commit is contained in:
2020-09-02 18:43:23 +08:00
parent 0f63888022
commit 30f4a6a9a8
2 changed files with 355 additions and 330 deletions
+5
View File
@@ -28,12 +28,17 @@ class OnRequest extends Callback
/** /**
* @param Request $request * @param Request $request
* @param Response $response * @param Response $response
* @return void
* @throws Exception * @throws Exception
*/ */
public function onHandler(Request $request, Response $response) public function onHandler(Request $request, Response $response)
{ {
try { try {
/** @var HRequest $sRequest */
[$sRequest, $sResponse] = static::setContext($request, $response); [$sRequest, $sResponse] = static::setContext($request, $response);
if ($sRequest->is('favicon.ico')) {
return $sResponse->send($sRequest->isNotFound(), 200);
}
$sResponse->send(Snowflake::get()->router->dispatch(), 200); $sResponse->send(Snowflake::get()->router->dispatch(), 200);
} catch (Error | \Throwable $exception) { } catch (Error | \Throwable $exception) {
$this->sendErrorMessage($sResponse ?? null, $exception, $response); $this->sendErrorMessage($sResponse ?? null, $exception, $response);
+20
View File
@@ -6,6 +6,7 @@ use Snowflake\Core\Help;
use Exception; use Exception;
use HttpServer\Application; use HttpServer\Application;
use HttpServer\IInterface\AuthIdentity; use HttpServer\IInterface\AuthIdentity;
use Snowflake\Core\JSON;
use Snowflake\Snowflake; use Snowflake\Snowflake;
defined('REQUEST_OK') or define('REQUEST_OK', 0); defined('REQUEST_OK') or define('REQUEST_OK', 0);
@@ -392,6 +393,25 @@ class Request extends Application
} }
/**
* @param $router
* @return bool
*/
public function is($router)
{
return $this->getUri() == trim($router, '/');
}
/**
* @param $router
* @return bool
*/
public function isNotFound()
{
return JSON::to(404, 'Page ' . $this->getUri() . ' not found.');
}
/** /**
* @param $request * @param $request
* @return Request * @return Request