个人技术博客(α)

个人技术博客(α)

JS实现跨域资源共享(CORS)

我在项目中负责的是超级管理员管理系统的前端部分。在这个过程中,我需要通过ajax利用后端写好的接口来调用数据。在各自完成任务的情况下,前后端的代码并没有整合在一起,但是在默认情况下,XHR对象只能够访问与包含它的页面位于同一个域中的资源,如果直接调用接口发送ajax请求的话会出现由于跨域安全策略而被拒绝访问的情况。解决的方法就是:在发送ajax请求之前,自定义一个头部信息 Origin: http://www.xxxxxxx.com(包含请求页面的协议,域名以及端口号),然后在接口页面中通过设置自定义头部回发相同的源信息 Access-Control-Allow-Origin: http://www.xxxxxxx.com,这样就能实现跨域资源共享了。(如果是公共资源,那么可以设置 Access-Control-Allow-Origin: *,这样表示所有请求页面都可以访问使用这个接口,这样设置之后,就不需要往ajax请求添加Origin头部了)

原文地址:https://www.cnblogs.com/gannonone/p/7846410.html