【问题标题】:No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost' is therefore not allowed access请求的资源上不存在“Access-Control-Allow-Origin”标头。因此不允许访问源“http://localhost”
【发布时间】:2017-09-26 09:13:04
【问题描述】:

我在 AngularJS(离子框架)中有一个应用程序,在 Symfony 中有一个服务器。

在本地一切正常,但现在我在服务器上进行在线测试。不幸的是,一切都不像本地那样发生,我有以下错误:

请求的资源上不存在“Access-Control-Allow-Origin”标头。 Origin 'http: // localhost' 因此不允许访问。

我想知道如何添加缺少的“Access-Control-Allow-Origin”CORS 标头。

【问题讨论】:

    标签: angularjs symfony http-headers cors


    【解决方案1】:

    我认为您的问题不是来自 Angular,看起来它来自您的 API 服务器。

    您可能需要一些标头服务器端:

    Access-Control-Allow-Origin: *
    Access-Control-Allow-Headers: Content-Type
    Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
    

    【讨论】:

    • 是的,我对自己说同样的话,现在你对我说了这句话。所以我必须寻找一种将标头添加到 Symfony 服务器的方法
    【解决方案2】:

    使用此捆绑包:NelmioCorsBundle

    CORS-Bundle 用于定义 CORS 规则。此捆绑包允许您定义哪些域可以访问您的 REST API。它也会让你的工作更轻松:)

    【讨论】:

    • 是的,非常感谢!我只是想测试这个捆绑包,它可以工作:)
    猜你喜欢
    • 1970-01-01
    • 2018-08-12
    • 2017-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多