php 跨域问题
2021-05-30 20:01
标签:dom 响应头 exit request function env 问题 access span 四点: 1.允许跨域的来源域名 2.允许跨域的请求方法 3.允许带 cookie 的跨域访问(不允许改为false) 4.允许跨域的头部(记得把自定义的header头也写进去,不然跨域会不成功) 特别要注意的是3和4点。比如第4点的Access-Token,我们项目自定义的,忘了加。在有用户登陆的时候,就一直无法跨域。 php 跨域问题 标签:dom 响应头 exit request function env 问题 access span 原文地址:https://www.cnblogs.com/hfdp/p/14654952.html/**
* 跨域请求设置
*/
function checkAllowOrigin()
{
//从配置文件获取允许源域名
$allowOrigin = explode(‘,‘, env(‘app.allow_origin‘));
if (in_array(‘*‘, $allowOrigin)) {
$origin = ‘*‘;
$allow = true;
} else {
$origin = request()->header(‘Origin‘) ?? request()->domain();
$allow = in_array($origin, $allowOrigin);
}
if (!$allow) {
exit(‘403‘);
}
//允许跨域的来源域名
header(‘Access-Control-Allow-Origin:‘.$origin);
header(‘Access-Control-Allow-Methods: GET, POST, OPTIONS‘);//允许跨域的请求方法
// 带 cookie 的跨域访问
header(‘Access-Control-Allow-Credentials: true‘);
// 响应头设置(允许跨域的头部)
header(‘Access-Control-Allow-Headers:x-requested-with,Content-Type,X-CSRF-Token,Access-Token‘);
}
上一篇:js中的进制类型转换
下一篇:bugku web40