【问题标题】:How to enable CORS in Sails.js on OpenShift如何在 OpenShift 上的 Sails.js 中启用 CORS
【发布时间】:2018-09-25 09:11:55
【问题描述】:

我正在尝试在 SailsJS v0.9.15 中启用 CORS... 如果我在 cors.js 中设置“allRoutes:true”并没有帮助,我仍然会收到与 CORS 相关的错误。为什么这不起作用?照着这个应该就够了……https://github.com/balderdashy/sails-docs/blob/master/todo/config.cors.md

Firefox 中的错误:“跨域请求被阻止:同源策略不允许读取 www.domain.com 上的远程资源。这可以通过将资源移动到同一域或启用 CORS 来解决。”

Chrome 中的错误:“'Access-Control-Allow-Origin' 标头包含无效值 'null'。因此不允许访问 Origin 'www.domain.com'。”

这是一个错误吗?

Sails.js (REST api) 托管在 Openshift 上,这可能是个问题吗?

感谢您的帮助...

【问题讨论】:

  • 您的应用程序的两个部分(应用程序和 API)是否托管在不同的服务或不同的域上?
  • 是的,API 托管在 Openshift PaaS 上,客户端应用程序目前是一个单页面骨干应用程序(将来它将是一个手机间隙应用程序)。
  • 不幸的是,这似乎是 OpenShift 通常过滤掉 CORS 标头的问题。见stackoverflow.com/questions/23978344/…。希望来自 OpenShift 的人能回答这个问题。
  • 我在我的本地主机上使用sails rc8,但我仍然在chrome上收到此错误。我尝试修改 config/cors.js allRoutes 并将其设置为 true,但随后出现另一个错误:XMLHttpRequest cannot load 192.168.2.106:1337/session/mobileCheckAuth?_dc=1405003092187。 Access-Control-Allow-Headers 不允许请求标头字段 X-Requested-With。在 Heroku 上托管时也会发生同样的情况,但这对我来说不太重要。任何想法?我需要这个来通过我的 Chrome 浏览器进行测试。
  • @user2867106,看看documentation,特别是headers设置...

标签: node.js cors openshift sails.js


【解决方案1】:

为了正式发布,有一个open issue about CORS headers being filtered out by OpenShift。对于不阻止这些标头的部署,CORS 在 Sails 中应该可以正常工作。 Sails 中的 CORS 文档是 herehere

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-30
    • 2014-10-19
    • 2018-10-03
    • 1970-01-01
    • 2017-04-30
    • 2015-11-30
    • 1970-01-01
    相关资源
    最近更新 更多