Nginx实现跨域请求配置

一:什么是跨域

跨域是指一个域名的网页去请求另一个域名的资源. 只要协议, 域名, 端口中, 有任何一个不同, 都是跨域。

 

二:代码

server端: 提供数据, 8081端口

@RestController
@RequestMapping("/data/")
public class DataController {
    @RequestMapping("getList")
    public List<Book> getList() {
        List<Book> list = new ArrayList<>();
        list.add(new Book("海底两万里", 3000L));
        list.add(new Book("三体", 1000L));
        list.add(new Book("大鲸鱼", 2000L));
        list.add(new Book("是什么限制了我们的想象力", 4000L));
        return list;
    }
}

client端: 访问数据, 8082端口

<html>
<body>
<h2>Hello World! client</h2>
<script src="js/jquery-1.9.1.js"></script>
<script>
    $(function () {
        console.log("ajax start ...");
        $.ajax({
            url: 'http://localhost:8081/server/data/get',
            type: 'get',
            success: function (data) {
                console.log(data);
            },
            error: function (data) {
                console.log(data);
            }
        });
    });
</script>
</body>
</html>

三:nginx跨域配置

关键属性:proxy_pass http://ip:8081/data/getList

修改nginx配置文件, 反向代理这两个服务. 然后启动nginx服务

 

 


版权声明:本文为a898712940原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。