node example cookie node.js express socket.io sessionid

node.js - example - express url params



Obtenga SESSIONID en nodeJS (1)

Si los datos de la sesión se almacenan como una cookie (lo más probable), entonces usted debería poder volver a analizar esos datos durante el intercambio de información del zócalo. Publiqué un código para eso en esta respuesta , pero también copié el código aquí:

io.configure(function () { io.set(''authorization'', function (handshakeData, callback) { var cookie = handshakeData.headers.cookie; // parse the cookie to get user data... // second argument to the callback decides whether to authorize the client callback(null, true); }); });

Si los datos de la sesión se propagan en la URL, entonces usted puede recopilar esta información de handshakeData.url o handshakeData.query . Probablemente tengas que hacer tu propia experimentación.

Ahora, después de algunas horas jugando con nodejs y socket.io, tengo un par de problemas más, uno de los cuales es que necesito obtener el ID de sesión dentro de node.js, sin utilizar app.get(''/'' ... - dado que ese evento no parece socket.io cuando se conecta socket.io , solo se .on(''connection'', function( ...

var express = require(''express'')() express.set(''port'', process.env.PORT || 8080) var server = require(''http'').createServer(express) var socket = require(''socket.io'').listen(server) server.listen(express.get(''port'')) // this event is fired, get(''/'', ... isnt! server.on(''connection'', function(stream) { // ?? } )

La sesión se crea inicialmente mediante la aplicación PHP, a medida que el usuario inicia sesión. Los datos de la sesión se almacenan en la base de datos, y la clave que necesito para acceder a esos datos es la ID DE LA SESIÓN. ¿Cuál es la forma más fácil de llegar a ella? Como mencioné, encontré un par de ejemplos que usaban app.get(''/'' ... pero no pude disparar ese evento en absoluto.

Gracias.