No 'Access-Control-Allow-Origin' header is present on the requested resource.

在ajax访问github并进行回调时,发生跨域错误


image.png

解决办法一

(1)如果被请求的是静态HTML文件,则需要只需要在被请求的HTML文件中加上一下标签。

(2) 如果被请求的是java接口,则可以在响应头中加上:
response.setHeader("Access-Control-Allow-Origin", "http://www.domain1.com");
(3) 如果被请求的是.net接口,则可以在响应头中加上:
Response.AddHeader("Access-Control-Allow-Origin", "");

解决办法二

(1) 通过jsonp的方式,从前端解决。
jquery实现:
$.ajax({
url: 'http://www.domain2.com:8080/login',
type: 'get',
dataType: 'jsonp', // 请求方式为jsonp
crossDomain: true,
success: function(data) {},
data: {}
});
(2)通过请求代理的方式
跨域原理: 同源策略是浏览器的安全策略,不是HTTP协议的一部分。服务器端调用HTTP接口只是使用HTTP协议,不会执行JS脚本,不需要同源策略,也就不存在跨越问题。
原文链接:https://blog.csdn.net/dear_little_bear/article/details/83999391

你可能感兴趣的:(No 'Access-Control-Allow-Origin' header is present on the requested resource.)