From c022fa9152c76f1dd8659e82bd2090a6cde62f46 Mon Sep 17 00:00:00 2001 From: ctexthuang Date: Thu, 7 Nov 2024 09:12:00 +0800 Subject: [PATCH] feat : cors --- app/Middleware/CorsMiddleware.php | 30 ++++++++++++++++++++++++++++++ config/autoload/middlewares.php | 2 ++ 2 files changed, 32 insertions(+) create mode 100644 app/Middleware/CorsMiddleware.php diff --git a/app/Middleware/CorsMiddleware.php b/app/Middleware/CorsMiddleware.php new file mode 100644 index 0000000..195deb1 --- /dev/null +++ b/app/Middleware/CorsMiddleware.php @@ -0,0 +1,30 @@ +withHeader('Access-Control-Allow-Origin', '*') + ->withHeader('Access-Control-Allow-Credentials', 'true') + ->withHeader('Access-Control-Allow-Headers', '*') // Headers 可以根据实际情况进行改写。 + ->withHeader('Access-Control-Request-Headers', '*') + ->withHeader('Access-Control-Allow-Methods', '*') + ->withHeader('Access-Control-Max-Age', 1800); + + if ($request->getMethod() == 'OPTIONS') { + return $response; + } + + return $handler->handle($request); + } +} \ No newline at end of file diff --git a/config/autoload/middlewares.php b/config/autoload/middlewares.php index 352ccd4..523a4cf 100644 --- a/config/autoload/middlewares.php +++ b/config/autoload/middlewares.php @@ -10,10 +10,12 @@ declare(strict_types=1); * @license https://github.com/hyperf/hyperf/blob/master/LICENSE */ +use App\Middleware\CorsMiddleware; use Hyperf\Validation\Middleware\ValidationMiddleware; return [ 'http' => [ + CorsMiddleware::class, ValidationMiddleware::class ], ];