Имам затруднения да накарам EventMachine Web-socket клиент да се свърже със защитен уеб-socket сървър wss://
чрез TLS.
Имам настройка на EventMachine уеб-сокет сървър и работи добре. Мога да използвам javascript от браузъра и връзките работят чудесно. Просто не мога да накарам клиентските връзки на EventMachine Web-socket да работят.
Мисля, че може да е нещо със сертификатите, но не знам как да разбера.
Ето кода на моя клиент:
require 'eventmachine'
require 'em-websocket-client'
EM.run do
conn = EventMachine::WebSocketClient.connect("ws://0.0.0.0:9110/message")
conn.callback do
data = {data: 'data'}
conn.send_msg data.to_json
end
conn.errback do |e|
puts "Got error: #{e}"
end
conn.stream do |msg|
puts "<#{msg}>"
conn.close_connection
end
conn.disconnect do
puts "success"
EM::stop_event_loop
end
end
Не получавам грешка(и)? Мога да дешифрирам от клиента. И на сървъра (работещ в режим на отстраняване на грешки) показва само:
[[:initialize]]
[[:unbind, :connection]]
Също така се опитах да заменя ws:// с wss:// без резултат.
Между другото всичко работи добре, ако премахна криптирането от проблема.
Някой друг да има успех с това?