thinkphp跨域很齐全的处理方式

15 篇文章 2 订阅
10 篇文章 0 订阅
<?php
declare (strict_types=1);

namespace app\middleware;

class admin
{
    /**
     * 处理请求
     *
     * @param \think\Request $request
     * @param \Closure $next
     * @return Response
     */
    public function handle($request, \Closure $next)
    {
        /** @var Response $response */
        $response = $next($request);
        $response->header([
            'Access-Control-Allow-Origin' => 'http://localhost:8080', // 允许跨域域名
            'Access-Control-Expose-Headers' => 'Authorization', // 允许跨域前端读取的headers
            'Access-Control-Allow-Methods' => 'GET, POST, PATCH, PUT, DELETE',// 允许的mehtods
            'Access-Control-Allow-Headers' => 'Authorization, Content-Type, If-Match, If-Modified-Since, If-None-Match, If-Unmodified-Since, X-Requested-With,authorization', // 允许传至后端的headers
            'Access-Control-Allow-Credentials' => 'true' // 允许跨域cookie传输
        ]);
        if (strtoupper($request->method()) == "OPTIONS") {
            return $response;
        }
        return $response;
    }
}

相关注释已在其中写明!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值