跨域请求被阻止:(原因:缺少 CORS 标头“Access-Control-Allow-Origin”)
Posted
技术标签:
【中文标题】跨域请求被阻止:(原因:缺少 CORS 标头“Access-Control-Allow-Origin”)【英文标题】:Cross-Origin Request Blocked: (Reason: CORS header 'Access-Control-Allow-Origin' missing) 【发布时间】:2016-04-02 06:02:54 【问题描述】:我在 Angularjs 中遇到错误
跨域请求被阻止:同源策略不允许读取位于https://.../ 的远程资源...(原因:缺少 CORS 标头“Access-Control-Allow-Origin”)。
下面是我的代码:
$http(
method: 'GET',
url:"https://logis../oms/rest/TMS/../listTenders/1.0",
headers: 'Authorization': 'Basic Q2FycmllckFUcmFuc01ncjpwYXNzd29yZA=='
).success(function (response)
console.log("response--"+response);
resolve(response);
).error(function (error)
console.log("error123--"+error)
reject(error);
);
我在 AngularJs 中使用 GET 请求并出现上述错误。 如果客户端缺少任何东西,任何人都可以帮助我吗 或服务器端有任何剩余 服务器端是用Java编写的 所以请帮帮我。 谢谢
【问题讨论】:
也许这是我的老问题会帮助你:***.com/questions/21455045/… 【参考方案1】:我遇到了同样的错误。尝试从您的服务器端语言(php 或 NOde)调用 url... 如果你使用客户端语言(角度或普通 AJAX)来调用它,你总是会得到 CORS 错误。
【讨论】:
如果我在 chrome 中使用 POSTMAN 工具,那么我会得到响应 在您可以控制收到的请求响应之前,无法在客户端解决 CORS。 因此,如果您向其发出请求的服务器已解除 CORS 阻塞,您将不会收到错误消息。但如果不是,你总是会得到一个错误 JSONP 仅在您使用 JSONP 格式时才有效。响应在 JSONP 中并不总是正确的 表示如果在服务器端正确设置了 CORS,那么我将不会收到错误 Access-Control-Allow-Origin: * 如果在服务器端设置了上述标头,那么我不会收到错误?【参考方案2】:有两种方法可以发出跨域请求。 1)您的服务器配置为允许此类请求 2) 使用 jquery/javascript 中的 JSONP,更详细的例子见以下链接:https://learn.jquery.com/ajax/working-with-jsonp/
【讨论】:
你能帮我为我在上面提出的 GET 请求编写 jsonp 语法吗,因为我试过了,但我无法将 JSONP 用于我的 GET 请求以上是关于跨域请求被阻止:(原因:缺少 CORS 标头“Access-Control-Allow-Origin”)的主要内容,如果未能解决你的问题,请参考以下文章
跨域请求被阻止:同源策略不允许读取远程资源,CORS 标头中缺少令牌“缓存控制”
跨域请求被阻止:CORS 标头“Access-Control-Allow-Origin”缺失
原因:缺少 CORS 标头“Access-Control-Allow-Origin”