Web开发过程中,我们比较常用的一个技术就是Ajax(不懂的自行百度)。在使用Ajax请求的时候,有时候会涉及到跨域问题。
跨域问题的解决比较常用的有两种方式 1.使用jsonp协议
,2.服务器上设置允许跨域请求
这边主要介绍下第二种方式的处理
服务器上设置允许跨域
1.代码层面的实现
*使用PHP的header()函数,设置http头部
代码示例:
$result = array(
'code' =>$code,
'msg' => $msg,
'data' => $data
);
header("Access-Control-Allow-Origin:*");
echo json_encode($result);exit;
2.Web服务器配置
Nginx虚拟主机中的配置:
location /{
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Methods' 'GET,POST';
}
第一个表示:允许跨域请求的域名,* 表示所有,也可以指定域名,例如:https://www.nuxtv.com
第二个表示:响应于该请求是否可以被暴露
第三个表示:允许请求的方法