Передать пароль при подключении по websocket

155
15 ноября 2018, 22:30

Рефакторим один легаси проект. В нем таким вот образом устанавливается вэбсокет соединение между node.js middleware и сервером на django:

const WebSocket = require('faye-websocket');
import CryptoJS = require("crypto-js");
const token = CryptoJS.MD5(login);
const WS_URL = `ws://${token}@${api_rest_server}/ws/channel/test`;
const ws = new WebSocket.Client(WS_URL);
ws.on('open', (event) => { ...

В результате фактически устанавливается соединение по url:

`ws://${api_rest_server}/ws/channel/test`

и в качестве параметра передается что-то вроде

{
  login: token,
  password: api_rest_server,
}

и сервер на django авторизует желающих подключиться, используя этот payload. Теперь возникла необходимость подключаться к django через вэбсокет напрямую из вэб-приложения. Подключить на клиенте библиотеку faye-websocket не получается, т.к. она под капотом подключает встроенные node.js пакеты, которых нет в браузере. Есть ли возможность подобным образом передать вместе с событием connection параметры login, password при использовании нативных вэбсокетов, библиотеки socket.io?

READ ALSO
передача шаблона в шаблон с параметрами в express-handlebars

передача шаблона в шаблон с параметрами в express-handlebars

Проблема следующаяшаблон "index" загружается, в переменную body передаю шаблон, но в шаблон не передаются параметры для работы handlebars шаблонизатора

129
Виртуальный метод при композиции

Виртуальный метод при композиции

Объект класса с двумя методами getOuter и getInner оборачивается другим классом, имеющим такой же интерфейс, но используется не наследование а композиция,...

158