您现在的位置是:网站首页>>PHP>>php
php 实现跨域访问
发布时间:2018-11-23 11:39:46作者:wangjian浏览量:417点赞量:0
在实际项目中,我们会经常碰到跨域访问的问题,例如前端后端分离,这时候就涉及到跨域问题,这里说明PHP中是如何解决跨域访问
1、允许所有域名访问header('Access-Control-Allow-Origin: *');
2、允许单个域名访问
header('Access-Control-Allow-Origin: https://www.test.com');
3:允许多个域名跨域访问
// 设置能访问的域名
public static $arr = [
'https://www.test1.com',
'https://www.test2.com',
];
/**
* 公共方法调用
*/
public static function setheader()
{
// 获取当前跨域域名
$origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : '';
if (in_array($origin, self::arr)) {
// 允许 $originarr 数组内的 域名跨域访问
header('Access-Control-Allow-Origin:' . $origin);
// 响应类型
header('Access-Control-Allow-Methods:POST,GET');
// 带 cookie 的跨域访问
header('Access-Control-Allow-Credentials: true');
// 响应头设置
header('Access-Control-Allow-Headers:x-requested-with,Content-Type,X-CSRF-Token');
}
}
你还可以设置请求方式:
header('Access-Control-Allow-Methods:GET,POST,PATCH,PUT,OPTIONS');
0
+1