Recientemente he ido a ampliar mi sitio usando node.js y he llegado a la conclusión de que necesito un controlador de sesión para mis sesiones de PHP. Ahora todo fue genial y elegante y node.js lee las sesiones de php y puede propocionar su propia sesión con las de php. Estoy usando sesiones de base de datos para que los datos de la sesión se guarden en un campo en la base de datos.Parse PHP Session en Javascript
Sin embargo, he encontrado un pequeño problema. Estoy intentando leer los datos de la sesión en node.js y es realmente una cadena bastante extraña. He sido capaz de obtener el strucutre de cada variable de sesión a:
'field_name'|'type':'length':'value';
Ahora, en determinadas cadenas de valor del campo puede faltar en otras cadenas de la longitud puede faltar (cuando una variable es nulo). El tipo también puede ser más que b, s, i; también puede ser N (NULO).
Originalmente había pensado en un gran traductor para JS, pero esto de alguna manera parece ser una manera muy incorrecta de hacerlo.
¿Alguien ha intentado extraer las variables de sesión de php en JS antes y hay algún tipo de script que pueda ayudar? ¿Quizás hay algo de formato que puedo usar en PHP para hacer mi vida mucho más fácil en node.js?
Editar: el esquema se parece a:
{ _id: { id: 'L:\u00c1\u009d\u008e\u00ad\u000e}<\u0002\u0000\u0000' }
, session_id: 'a2clfnjhopv1srs5k5elgbfjv5'
, user_id: 0
, session_data: 'logged|b:0;uid|i:0;server_key|N;AUTH_TIER2|b:0;email|s:0:"";cheese|s:6:"cheese";'
, active: 1
, expires: 1278920567
}
Este es el registro db mongo para una sesión de usuario. El campo que debe traducirse es session_data. Existe algún tipo de error de formateo al pegarlo, ya que stackoverflow no lo formateará como código cuando intente hacerlo por alguna razón.
Me trataron de JSONfy el campo antes, pero perdió su tipo y no leer entradas nulas, etc, así que se detuvo
queGracias,
no he trabajado con Node.js antes. ¿Sería posible ['json_encode'] (http://uk2.php.net/manual/en/function.json-encode.php) los datos de sesión no serializados de PHP antes de pasarlo a node.js? – Gordon
¿Puedes mostrar un ejemplo en lugar del esquema? ¿cómo se ve cuando algo falta? – galambalazs
Agregué el esquema, aunque como dije, hubo algún tipo de error al pegarlo y stackoverflow no formateará los datos para que sean código :(. Galam, como también afirmo en la edición que probé JSON, pero pareció romper el cadena que hace imposible recuperar datos de sesión :(. Tal vez hay algo en eso, si hago un campo de nodo y copio los datos de la sesión en una cadena json ... y hago un dejsonificador para el campo .... hmmmm podría funcionar – Sammaye