websocket-rails,websocket握手错误

我关注了websocket-rails github wiki页面上的文档,但是无法克服这个难题,我用​​chrome得到了这个错误:

WebSocket connection to 'ws://0.0.0.0:3000/websocket' failed: Error during WebSocket handshake: Unexpected response code: 301 

我安装了websocket-rails gem,生成了安装,我成功设置了config.middleware.delete Rack::Lock in development.rb ; 我正在使用Rails 4。

我认为:

  var dispatcher = new WebSocketRails('0.0.0.0:3000/websocket');  

我进入了chat_controller.rb

 class ChatController < WebsocketRails::BaseController def initialize_session puts "Session Initialized" end def user_connected puts 'user connected' end end 

在我的events.rb

 WebsocketRails::EventMap.describe do subscribe :client_connected, :to => ChatController, :with_method => :user_connected end 

正如您所看到的,我的目标是每次有人进入页面时在我的瘦服务器控制台中显示“会话已初始化”和“用户已连接”。 之间,我用bundle exec thin start运行服务器,但我得到了一个javascript错误(websocket连接失败错误301)。

感谢Websocket Rails IRC的成员,我发现在我的路线中,我在每条路径之前附加了语言环境,因此它无法找到它。

检查你的routes.rb是否有人遇到了这个问题!