socket.io изменение параметра auth для передачи jwt на сервер

Всем примет.

Решаю задачу по передаче с клиента, jwt на сервер в рамках соединений Socket. Делаю это в плагине vuex в событии для actions - > store.subscribeAction:

store.$socket.close();
   store.$socket.io.opts.auth.token='eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6InZva21hciIsImlhdCI6MTUxNjIzOTAyMn0.EK7P2YE0khAtdfZLTOPYPNgR_SLrEvseSoogRCxdOxc'
store.$socket.connect();

цель: добавлять jwt для всех запросов на сервер

Вопрос:

  1. (подчеркну, все работает как нужно), не пойму почему для добавления в store.$socket.io.opts.auth нужно сперва закрыть socket, выполнить присваивание token и перезапустить socket, такой вариант где-то ??? нашел, попробовал, работает.
  2. является ли данный вариант приемлемым, поделитесь практикой

Ответы (1 шт):

Автор решения: Павел Рамков

Вот так гуд. store.$socket.auth.token=JSON.parse(JSON.stringify(token())) store.$socket.io.opts.query = {jwt:JSON.parse(JSON.stringify(token()))}

→ Ссылка