1
我正在編寫一個應用程序,用戶可以一次從多個瀏覽器登錄,並且在頁面加載時建立到服務器上的socket.io連接。如何將php會話數據傳遞給socket.io?
我想跟蹤所有客戶端套接字標識號爲socket.id
的redis集,其關鍵看起來像是登錄用戶的userId:???:socketClientIds
。我希望SADD套接字客戶端ID在通過ajax調用php腳本後設置爲redis。
由於我將用戶ID保留在一個php會話變量$_SESSION['userId']
中,我可以將此用戶ID的值傳遞給socket.io以確保安全/實用方式,因此我可以將該客戶端ID添加到該集合中?
client.sadd("userId:???:socketClientIds", socket.id)
我不能信任的客戶端,爲用戶ID提供準確的價值,因爲它可能是僞造的。
節點如何知道要解析哪個會話文件(它不知道用戶ID和phpsessid)?它不知道默認的文件名是'sess_ $ phpsessid'。 – user784637
Socket.IO應該能夠讀取包含PHP會話標識的初始請求發送的cookie。 – mscdex