规范跨域代码,采用中间件的方式处理跨域

This commit is contained in:
柳清爽
2025-04-27 13:51:53 +08:00
parent ad60944f88
commit 71b2f12c77
7 changed files with 158 additions and 22 deletions

View File

@@ -1,6 +1,8 @@
<?php
namespace app\superadmin\middleware;
use app\common\model\Administrator;
/**
* 超级管理员后台登录认证中间件
*/
@@ -14,6 +16,11 @@ class AdminAuth
*/
public function handle($request, \Closure $next)
{
// 对OPTIONS请求直接放行由跨域中间件处理
if ($request->method(true) == 'OPTIONS') {
return $next($request);
}
// 获取Cookie中的管理员信息
$adminId = cookie('admin_id');
$adminToken = cookie('admin_token');
@@ -28,7 +35,7 @@ class AdminAuth
}
// 获取管理员信息
$admin = \app\common\model\Administrator::where([
$admin = Administrator::where([
['id', '=', $adminId],
['status', '=', 1]
])->find();
@@ -62,7 +69,8 @@ class AdminAuth
/**
* 创建登录令牌
* @param \app\common\model\Administrator $admin
*
* @param Administrator $admin
* @return string
*/
private function createToken($admin)