Crazy lens

ACCESS-CONTROL-ALLOW-ORIGIN解决AJAX跨域问题
server端加上header设为 Access-Control-Allow-Origin:*header('Ac...
扫描右侧二维码阅读全文
13
2016/05

ACCESS-CONTROL-ALLOW-ORIGIN解决AJAX跨域问题

server端加上header设为 Access-Control-Allow-Origin:*

header('Access-Control-Allow-Origin: *'); #允许请求域
header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE'); #允许请求的方法 
header('Access-Control-Max-Age: 3628800'); # 控制访问最大时长 (给浏览器 会生成缓存)

如果需要设置多个域名允许访问,这里需要用php处理一下
例如允许 www.client.com 与 www.client2.com 可以跨域访问
修改为

<?php  
    $ret = array(  
        'name' => isset($_POST['name'])? $_POST['name'] : '',  
        'gender' => isset($_POST['gender'])? $_POST['gender'] : ''  
    );  
  
    header('content-type:application:json;charset=utf8');  
  
    $origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : '';  
  
    $allow_origin = array(  
        'http://www.client.com',  
        'http://www.client2.com'  
    );  
  
    if(in_array($origin, $allow_origin)){  
        header('Access-Control-Allow-Origin:'.$origin);  
        header('Access-Control-Allow-Methods:POST');  
        header('Access-Control-Allow-Headers:x-requested-with,content-type');  
    }  
  
    echo json_encode($ret);  
?>  
最后修改:2019 年 11 月 04 日 11 : 48 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论