2012-05-06 80 views
2

我正在用node.js和Express寫一個聊天應用程序。身份驗證正在工作,我可以登錄到用戶帳戶並註冊新會話。我的問題是聊天本身在Websocket(Websocket-node)中運行,我無法訪問會話數據。如何在沒有會話數據的情況下識別發送到websocket的新連接請求?快遞:與websocket共享會話

謝謝!

回答

-1

我會建議不直接使用WebSockets,而是使用Socket.IO。它擁有授權和握手建於

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

這裏是你如何能得到會話信息

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

+1

嘿,感謝您的回答。由於我已經在實現已經很遠了,因爲我不必擔心向後兼容性,所以我想堅持使用websocket-node。我現在的想法是讀取連接請求中發送的cookie信息,並檢查會話數據庫中的等效userId。我可以打印cookie(request.cookies),如下所示:'[{name:'connect.sid', value:'7bWPjMtfQHTxoCZI2yFLLEVN.mByzCs9Wx5FOmg'}]',但我不知道如何訪問connect .sid正確。 – johnny