我使用Postman扩展发出GET请求并获得响应,但是如果我使用jQuery发出相同的请求,则会收到一个典型的错误:
XMLHttpRequest无法加载http://www.rfen.es/publicacion/ranking/resultsBySwimmer.asp?l=020039535&t=&p=0&e=50L-I。请求的资源上没有“访问-控制-允许-原产地”标题。
这一切为什么要发生?
我的javascript代码很简单:
function getTiempo (dni, piscina, prueba) {
$.ajax({
async: false,
type: "GET",
url: "http://www.rfen.es/publicacion/ranking/resultsBySwimmer.asp?l="+dni+"&t=&p="+piscina+"&e="+prueba
})
.done(function (data) {
console.log(data);
return data;
});
}邮递员分机也不在同一领域,为什么会得到响应?
发布于 2014-12-31 14:33:40
为了帮助未来的同事们寻找这个特定的问题:为什么邮递员工作,而我的jQuery不工作!
答案很简单,实际上: Chrome扩展是允许的!
常规网页可以使用XMLHttpRequest对象从远程服务器发送和接收数据,但它们受到相同的来源策略的限制。扩展没有那么有限。只要第一次请求跨源权限,扩展就可以与其原点以外的远程服务器对话。
https://stackoverflow.com/questions/25291840
复制相似问题