AI摘要
在ThinkPHP6中开启跨域,可通过继承`think\middleware\AllowCrossDomain`新建自定义中间件,并在类中配置`Access-Control`相关响应头。随后在`app/middleware.php`中注册该中间件,即可实现全局或路由级别的跨域支持。
ThinkPHP6 开启接口跨域
1.新建中间件
<?php
namespace app\home\middleware;
use Closure;
use think\middleware\AllowCrossDomain;
use think\Request;
use think\Response;
use think\response\Redirect;
class Allow extends AllowCrossDomain
{
protected $header = [
'Access-Control-Allow-Credentials' => 'true',
'Access-Control-Max-Age' => 1800,
'Access-Control-Allow-Methods' => 'GET, POST, PATCH, PUT, DELETE, OPTIONS',
'Access-Control-Allow-Headers' => 'Authorization, Content-Type, If-Match, If-Modified-Since, If-None-Match, If-Unmodified-Since, X-CSRF-TOKEN, X-Requested-With, jwtToken',
];
}2.全局使用中间件或者路由使用中间件
app/middleware.php<?php
// 全局中间件定义文件
return [
// 加上这句
\app\home\middleware\Allow::class,
];
评论 (0)