it's ok when start rails with command: rails s -b0.0.0.0 -p8080.
but start rails with command:rails s -b0.0.0.0 -p8080 -d
can't connect to websocket
server:
config/initializers/websocket.rb
EM.run {
EM::WebSocket.run(:host => "0.0.0.0", :port => 8082) do |ws|
ws.onopen { |handshake|
puts "WebSocket connection open"
# Access properties on the EM::WebSocket::Handshake object, e.g.
# path, query_string, origin, headers
# Publish message to the client
ws.send "Hello Client, you connected to #{handshake.path}"
}
ws.onclose { puts "Connection closed" }
ws.onmessage { |msg|
puts "Recieved message: #{msg}"
ws.send "Pong: #{msg}"
}
end
}
client:
html file
<script>
var ws = new WebSocket("ws://*.*.*.*:8082");
ws.onopen = function() {
alert("websocket is connected...");
ws.send('send from browser');
};
ws.onmessage = function (evt) {
var msg = evt.data;
alert("Message is received..." + msg);
};
ws.onclose = function() {
alert("Connection is closed...");
};
</script>
websocket test
it's ok when start rails with command: rails s -b0.0.0.0 -p8080.
but start rails with command:rails s -b0.0.0.0 -p8080 -d
can't connect to websocket
server:
config/initializers/websocket.rb
EM.run {
EM::WebSocket.run(:host => "0.0.0.0", :port => 8082) do |ws|
ws.onopen { |handshake|
puts "WebSocket connection open"
end
}
client:
<script> var ws = new WebSocket("ws://*.*.*.*:8082"); ws.onopen = function() { alert("websocket is connected..."); ws.send('send from browser'); }; ws.onmessage = function (evt) { var msg = evt.data; alert("Message is received..." + msg); }; ws.onclose = function() { alert("Connection is closed..."); }; </script> websocket testhtml file