Files
kiri-core/HttpServer/Route/CoreMiddleware.php
T

49 lines
1011 B
PHP
Raw Normal View History

2020-08-31 01:27:08 +08:00
<?php
2020-10-29 18:17:25 +08:00
declare(strict_types=1);
2020-08-31 01:27:08 +08:00
namespace HttpServer\Route;
2020-08-31 22:33:50 +08:00
use Closure;
use Exception;
2020-08-31 12:38:32 +08:00
use HttpServer\Http\Context;
2020-08-31 01:27:08 +08:00
use HttpServer\Http\Request;
use HttpServer\Http\Response;
2021-03-05 16:20:49 +08:00
use HttpServer\IInterface\Middleware;
2021-04-27 17:25:47 +08:00
use Snowflake\Snowflake;
2020-08-31 01:27:08 +08:00
/**
* Class CoreMiddleware
2020-08-31 12:38:32 +08:00
* @package Snowflake\Snowflake\Route
2020-08-31 01:27:08 +08:00
* 跨域中间件
*/
2021-03-05 16:20:49 +08:00
class CoreMiddleware implements Middleware
2020-08-31 01:27:08 +08:00
{
2021-07-19 19:04:13 +08:00
/** @var int */
public int $zOrder = 0;
2020-08-31 01:27:08 +08:00
/**
* @param Request $request
2020-08-31 22:33:50 +08:00
* @param Closure $next
2020-08-31 01:27:08 +08:00
* @return mixed
2020-08-31 22:33:50 +08:00
* @throws Exception
2020-08-31 01:27:08 +08:00
*/
2020-12-14 17:45:39 +08:00
public function onHandler(Request $request, Closure $next): mixed
2020-08-31 01:27:08 +08:00
{
2020-09-16 20:51:33 +08:00
$headers = $request->headers;
2020-08-31 01:27:08 +08:00
/** @var Response $response */
2021-04-27 17:25:47 +08:00
$response = Snowflake::getApp('response');
2020-09-16 20:51:33 +08:00
$response->addHeader('Access-Control-Allow-Origin', '*');
$response->addHeader('Access-Control-Allow-Headers', $headers->get('access-control-request-headers'));
$response->addHeader('Access-Control-Request-Method', $headers->get('access-control-request-method'));
2020-08-31 01:27:08 +08:00
return $next($request);
}
}