2012-05-06 7 views
2

Я пишу чат-приложение с node.js и Express. Аутентификация работает, и я могу войти в учетные записи пользователей и зарегистрировать новые сеансы. Моя проблема заключается в том, что сам чат работает в Websocket (узел Websocket), и я не могу получить доступ к данным сеанса. Как я могу идентифицировать новые запросы на соединение, сделанные на веб-узел без данных сеанса?Экспресс: поделитесь сессией с websocket

Спасибо!

ответ

-1

Я бы посоветовал не работать с WebSockets напрямую, а вместо этого использовать Socket.IO. Он имеет разрешение и подтверждение связи, построенный в

https://github.com/LearnBoost/socket.io/wiki/Authorizing

Вот как вы можете получить информацию о сеансе

http://www.danielbaulig.de/socket-ioexpress/

+1

Эй, спасибо за ответ. Поскольку я довольно далеко от реализации уже и так как мне не нужно беспокоиться о обратной совместимости, я бы хотел придерживаться websocket-узла. Теперь я хочу прочитать информацию о файлах cookie, которая отправляется в запросе на соединение, и проверить базу данных сеанса для эквивалентного userId. Я могу напечатать cookie (request.cookies), что-то вроде: '[{name: 'connect.sid', value: '7bWPjMtfQHTxoCZI2yFLLEVN.mByzCs9Wx5FOmg'}]', но я не знаю, как получить доступ к значению connect .sid правильно. – johnny

Смежные вопросы