跨域问题

发布于 2017-01-13  301 次阅读


nginx解决

例如我ajax这么写

$.ajax({
    url: "http://www.cnblogs.com/gabrielchen/p/5066120.html",
    type:"get",
    success:function (response) {
        $("body").html(response);
    }
});

这里肯定是跨域的,因为我们本机和博客园的这篇帖子不在一个域内

而我们把ajax改成这样

$.ajax({
    url: "/gabrielchen/p/5066120.html",
    type:"get",
    success:function (response) {
        $("body").html(response);
    }
});

这样请求的就是本域内的东西,不算跨域了

然后在nginx中添加

location /gabrielchen {
    proxy_pass   http://www.cnblogs.com/gabrielchen;
}

意思就是监听以/gabrielchen开头的请求,然后代理转发到http://www.cnblogs.com/gabrielchen; 这样就不算跨域了


前提: 此页面是放在nginx下监管的html目录中的

参考 用nginx的反向代理机制解决前端跨域问题

服务端响应头加东西

response.addHeader("Access-Control-Allow-Origin", "*");
//只要上面一句就可以了
response.addHeader("Access-Control-Allow-Methods", "POST,GET");
response.addHeader("Access-Control-Allow-Credentials", "true");

梦想还是要有的,万一实现了呢