想利用vue+v2ex的开放api来写demo,在测试跨域请求json数据时遇到问题,用gulp的本地服务器来进行测试,本地请求json文件没有问题,但是V2EX的就不行了,报下面的错误
用的是CORS,对前端跨域的实现不是特别清楚,看书上的例子是说写绝对路径就可以
var xhr = new XMLHttpRequest();
xhr.open("get", "https://www.v2ex.com/api/topics/hot.json", false);
xhr.send(null);
if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304) {
alert(xhr.responseText);
var div = document.createElement('div');
div.innerHTML = xhr.responseText;
document.body.appendChild(div);
alert(allHeaders);
} else {
alert("Request was unsuccessful: " + xhr.status);
}
求解决方案,谢谢了。还有就是gulp搭建的本地服务器或是vue的本地服务器,有没有办法设置Access-Control-Allow-Origin
单纯本地自己做 Demo 用可以用这个 Allow-Control-Allow-Origin: * 扩展,它会帮你解决跨域问题。