WebSocket在连接建立之前已经关闭 - Rails 5

4

我正在尝试让Action Cable正常工作,但是出现了错误。

 WebSocket connection to 'ws://cloud9workspace:3000/cable' failed: WebSocket is closed before the connection is established.

我在谷歌上搜索了很久,但找不到任何有效的方法。我已经按照Cloud9社区中某个人的建议,在我的config.ru文件中添加了第三行代码,但是它并没有起作用。

require ::File.expand_path('../../config/environment',  __FILE__)
Rails.application.eager_load!
ActionCable.server.config.disable_request_forgery_protection = true

run ActionCable.server

我正在使用Cloud9的专业工作区,但是我没有看到任何表明Cloud9是问题的迹象。我已经被困在这个问题上有一段时间了。任何帮助都将不胜感激!


从终端工作,您应该能够通过运行 telnet cloud9workspace 3000 简单地连接。如果这样做不起作用,则问题不在于您的 Ruby 代码。 - Casper
1
我不确定专业工作区的功能,但您确定在Cloud9中有访问端口3000的权限吗? - Alejandro Montilla
1个回答

1
你想运行独立的ActionCable服务器吗?你是否使用puma?
添加。
require_relative '../config/environment'
Rails.application.eager_load!
run ActionCable.server

启动服务器(端口为28080):

bundle exec puma -p 28080 cable/config.ru

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接