【问题标题】:Rails actioncable alias request originsRails 可操作别名请求来源
【发布时间】:2016-02-18 02:57:24
【问题描述】:

我有一个带有子域的应用程序,我希望能够在添加子域时连接到所有子域的 WebSocket cable/config.ru

ActionCable.server.config.allowed_request_origins = ["domain.com",
 "sub1.domain.com", "sub1.domain.com"]

它工作正常,但我如何为所有子域设置别名 有这样的想法:

"[*.domain.com]"   

字符“ *”不起作用。

【问题讨论】:

  • 只是出于好奇,您是否在生产级别使用 ActionCable?或者你只是在玩它?

标签: ruby-on-rails nginx websocket actioncable


【解决方案1】:

Actioncable now supports regular expressions

用法如下:

Action Cable 将只接受来自指定来源的请求,即 作为数组传递给服务器配置。起源可以是 字符串或正则表达式的实例,对其进行检查 将进行匹配。

ActionCable.server.config.allowed_request_origins = ['http://rubyonrails.com', /http:\/\/ruby.*/]

【讨论】:

    【解决方案2】:

    您可以在这种情况下使用正则表达式。 在环境文件(生产和开发)中使用:

    config.action_cable.allowed_request_origins = [/(?:^(http|https):\/\/)?(?:([^.]+)\.)?#{ENV["domain"]}/]

    作为 ENV["domain"] 应用程序运行所在的域。

    【讨论】:

      【解决方案3】:

      [过时的答案]

      在 GitHub 上其官方 repo 上的 ActionCable 当前实现似乎还没有实现类似的东西。

      【讨论】:

        猜你喜欢
        • 2018-08-04
        • 1970-01-01
        • 2018-06-02
        • 2018-04-23
        • 1970-01-01
        • 1970-01-01
        • 2015-11-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多