由 config.action_cable.url 定义的 URL 在被 Vue 前端使用时生成 404

Posted

技术标签:

【中文标题】由 config.action_cable.url 定义的 URL 在被 Vue 前端使用时生成 404【英文标题】:URL defined by config.action_cable.url generating 404 when consumed by Vue frontend 【发布时间】:2019-08-04 20:12:44 【问题描述】:

在我的config/environments/development.rb 文件中,我添加了

config.action_cable.url = "ws://lab.lizardgizzards.com:4001/cable"

使用一个名为 actioncable-vue 的 Vue 模块,我试图让我的 Vue 前端使用我在 Rails 中创建的 Action Cable API。

这是我在 vue 前端的浏览器控制台中看到的错误:

WebSocket connection to 'ws://lab.lizardgizzards.com:4001/cable' failed: Error during WebSocket handshake: Unexpected response code: 404

我确实收到了来自http://lab.lizardgizzards.com:4001的回复

【问题讨论】:

【参考方案1】:

修复非常简单,只需将其添加到config/environments/development.rb

config.action_cable.allowed_request_origins = [/http:\/\/*/, /https:\/\/*/]

【讨论】:

以上是关于由 config.action_cable.url 定义的 URL 在被 Vue 前端使用时生成 404的主要内容,如果未能解决你的问题,请参考以下文章

rails 5 action cable 服务器部署

ActionCable 不尊重 production.rb 中的端口分配

jQuery 插件可由控制台触发,但不能由函数触发 - 为啥会这样?

常用宏定义 - 由角度转换弧度由弧度转换角度

由 coercion 引入的 NAs 由 knn 中的 coercionError 引入

如何区分两个“onpause”事件 - 由单击“暂停”按钮引起,以及由到达媒体片段末尾引起?