【发布时间】:2017-10-23 11:59:32
【问题描述】:
我正在尝试创建一个无头的 drupal 应用程序。我使用drupal 8 作为后端并作为前端做出反应。我使用核心休息服务模块在 drupal 8 中创建了 REST 服务。问题是当我调用 api 时它给了我错误,即
Fetch API 无法加载 http://192.168.1.246/headless-react/api/events。对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin 'http://localhost:3000' 不允许访问。响应的 HTTP 状态代码为 403。如果不透明的响应满足您的需求,请将请求的模式设置为“no-cors”以获取禁用 CORS 的资源。
我为 cors.config 配置了 services.yml 文件,但仍然出现错误。谁能知道如何解决它?谢谢
【问题讨论】:
-
显然没有正确配置
-
可能会出现此错误,因为您的本地主机正在尝试访问您的 ip (192.168.1.246)。尝试在您的 ip 上托管您的网页或在 localhost 上托管您的服务器。
-
您是否检查了响应服务器提供的信息?是否真的有“Access-Control-Allow-Origin”标头?有一个非常好的测试程序,叫做“Postman”:getpostman.com/postman
-
启动浏览器控制台并转到网络选项卡。检查 XHR 下的资源并查看 Access Control Allow Origin 标头。您可能还想检查 MetaTag 模块,它是否设置了正确的推荐人策略。
标签: javascript reactjs drupal drupal-8