【问题标题】:Symfony 4 api Restful No 'Access-Control-Allow-Origin' header is present on the requested resource, only for one resourceSymfony 4 api Restful 请求的资源上没有“Access-Control-Allow-Origin”标头,仅适用于一个资源
【发布时间】:2018-06-20 23:37:47
【问题描述】:

我使用 Symfony 4 作为 Restful API,我在从 VueJS 应用程序调用 api 方面工作得很好。 今天,我需要在 api 上添加另一个资源,但是当我想调用它以从 Vuejs 获取数据时,我得到“请求的资源上不存在'Access-Control-Allow-Origin'标头”。 仅对这个实体,对其他人有效。

【问题讨论】:

    标签: symfony cors symfony4 nelmiocorsbundle


    【解决方案1】:

    您的问题与CORS有关:

    跨域资源共享 (CORS) 是一种使用 额外的 HTTP 标头告诉浏览器让 Web 应用程序 在一个来源(域)运行有权访问选定的 来自不同来源的服务器的资源。一个网络应用程序使 跨域 HTTP 请求,当它请求具有 与自己的来源不同的来源(域、协议和端口)。

    可能的解决方案之一是安装NelmioCorsBundle。这会将 CORS 处理直接带到您的应用程序中。

    另一种解决方案是在您的网络服务器中添加此标头 (How do I add Access-Control-Allow-Origin in NGINX?)。

    【讨论】:

    • 我正在使用 NelmioCorsBundle:但我不明白为什么当我调用资源时它被破坏了。我在我做的配置下面添加了。
    • 我发现了错误;这是一个代码错误。谢谢你的回答。
    • @Y.Coding 是什么?
    • @Jalil 我刚刚遇到了同样的问题,我的解决方案是返回一个有效的 JSON。当我尝试 echo 某个值后跟 die 语句只是为了尝试一下时,发生了错误。
    猜你喜欢
    • 2023-03-16
    • 2017-02-07
    • 2014-07-30
    • 2016-01-14
    • 2023-03-15
    • 2018-12-02
    • 2015-10-30
    • 2019-10-07
    • 2021-09-28
    相关资源
    最近更新 更多