Я новичок в Ruby,Рубин WAMP-клиент камень - подключение к crossbar.io
Я пытаюсь использовать WAMP-клиент драгоценный камень, чтобы установить соединение с маршрутизатором crossbar.io. В Crossbar есть все настройки по умолчанию и приложение, созданное с помощью шаблона перекладины (python как back-end). Когда я подключение через браузер все нормально, но когда я пытаюсь использовать рубин просто
require "wamp/client"
wamp_test = WAMP::Client.new("ws://127.0.0.1:8080")
wamp_test.open
У меня есть `handle_opening_handshake_response«: Необработанный ответ открытия рукопожатия # (Net :: WS :: Error)» ошибка. Я знаю, что для обработки рукопожатия мой WAMP-маршрутизатор должен отправлять протокол протокола HTTP 101, но он этого не делает (не видит его в wirehark). Пожалуйста, помогите мне.
запрос клиента:
GET/HTTP/1.1\r\n
Upgrade: websocket\r\n
Connection: Upgrade\r\n
Sec-Websocket-Key: RggxGCwmcnVuEB08UQMCWA==\r\n
Sec-Websocket-Version: 13\r\n
Sec-Websocket-Protocol: \r\n
Accept-Encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3\r\n
Accept: */*\r\n
User-Agent: Ruby\r\n
Host: localhost:8080\r\n
\r\n
Full request URI: http://localhost:8080/
HTTP request 1/1
маршрутизатор возвращение:
HTTP/1.1 200 OK\r\n
Server: Crossbar/0.11.1\r\n
Date: Mon, 01 Feb 2016 07:48:33 GMT\r\n
Cache-Control: max-age=43200, public\r\n
Expires: Mon, 01 Feb 2016 19:48:33 GMT\r\n
Accept-Ranges: bytes\r\n
Content-Length: 5085\r\n
Content-Type: text/html\r\n
Last-Modified: Thu, 28 Jan 2016 13:07:24 GMT\r\n
\r\n
HTTP response 1/1
Line-based text data: text/html
Я добавил wamp_test = WAMP :: Client.new ("ws: //127.0.0.1: 8080/ws",: subprotocols => ["wamp.2.json"]) и теперь Sec-Websocket- Протокол - это wamp.2.json, но до сих пор нет соединения - такая же ошибка. Этот рубиновый камень является старым, поэтому я не уверен, поддерживает ли он WAMPv2 –
Глядя на две реализации Ruby WAMP, которые мог найти быстрый поиск Google, исходя из их возраста, ни один из них не может поддерживать WAMP v2. – gzost