我使用 Tubesock gem 为我的应用程序 Rails 4 添加 websockets 支持。在 localhost 上一切正常,但是通过 Cloud66 部署到 DigitalOcean 后,从http://www.websocket.org/echo 连接到它时出现错误。 html:
WebSocket connection to 'ws://example.development.c66.me/live?encoding=text' failed: Unexpected response code: 503
唯一不同的配置是我在本地使用 PUMA 服务器和堆栈中的乘客。
live_controller.rb
class LiveController < ApplicationController
include Tubesock::Hijack
def index
hijack do |tubesock|
tubesock.onopen do
tubesock.send_data "Hello, stranger!"
end
tubesock.onmessage do |data|
tubesock.send_data "You said: #{data}"
end
end
end
end
路线.rb:
...
get "/live" => "live#index", as: "live"
...
这个问题的根源可能是什么?