如何解决请求的资源上没有“Access-Control-Allow-Origin”标头

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何解决请求的资源上没有“Access-Control-Allow-Origin”标头相关的知识,希望对你有一定的参考价值。

因为我正在运行以下代码集

  1. AngularJS enter image description here
  2. html

html code 3.错误

enter image description here

答案

您可以在chrome浏览器中尝试以下插件:Core extension

如果你想在服务器端添加然后在服务器上添加以下标题(对于php在index.php中添加)

header("Access-Control-Allow-Origin:*");
header('Access-Control-Allow-Methods: GET, POST, OPTIONS, DELETE, PUT');
header('Access-Control-Allow-Headers: Origin, Content-Type, Accept, Authorization, X-Request-With, X-CLIENT-ID, X-CLIENT-SECRET');
header('Access-Control-Allow-Credentials: true');
另一答案

javascript旨在不从域转发到另一个域。你将从localhost转到另一个域。有一个相对较新的过程:跨源资源共享或CORS。在这里,服务器和客户同意允许它。它是通过标题完成的。你需要一个CORS标题。这是一个参考:https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS

另一答案

安装上面提到的chrome插件并不是解决您问题的永久解决方案,您不能要求最终用户也这样做。

最好的方法是在你的api代码中处理它。

有很多资源可以查看它是如何为各种语言api配置的。以下链接将使您了解它以及如何配置。

Why does my JavaScript get a “No 'Access-Control-Allow-Origin' header is present on the requested resource” error when Postman does not?

以上是关于如何解决请求的资源上没有“Access-Control-Allow-Origin”标头的主要内容,如果未能解决你的问题,请参考以下文章

如何解决请求的资源上不存在“Access-Control-Allow-Origin”标头

如何解决“请求的资源上不存在‘Access-Control-Allow-Origin’标头”

解决浏览器跨域的几种方式

如何在HTTPS 网页中引入HTTP资源

如何解决受信任证书上的 SSLHandshakeException?

将应用程序部署到 Meteor 时出现此错误