Estaba usando Rack Session Pool; sin embargo, mis usuarios podían ser expulsados de un hilo de servidor web a otro haciendo que caduquen los datos de la sesión. Empecé a jugar con solo habilitar: sesiones en Sinatra, sin embargo no puedo usar eso porque tengo varias aplicaciones usando Sinatra (la misma clave que parece estar usando - no estoy seguro si esto es porque es el mismo host o no)Rack Session Cookie y Sinatra: configuración y acceso a los datos
así que desde mis aplicaciones se romperían entre sí, ahora estoy tratando de cookie de sesión del estante y el establecimiento de las variables (lo mismo que permitirá: sesiones, pero se pueden establecer las variables)
Gran manera que funciona! Pero ahora no puedo acceder a los datos de la sesión de la manera que lo estaba usando, en el estante de la Sesión Conjunta y en Enable: sesiones
session[:user] = nick
puts session[:user]
usted consigue la idea ...
pregunta es por qué puedo acceder a datos de la sesión con session [: user] en Pool y Sinatra enable: sesiones, pero no en Rack Session Cookie? ¿Me estoy perdiendo algo? Todo lo que estoy haciendo está por debajo
config.ru
use Rack::Session::Cookie, :key => 'key',
:domain => "localhost",
:path => '/',
:expire_after => 14400, # In seconds
:secret => 'secret'
EDIT:
hecho un poco de más pruebas y encontraron que en realidad es ponerlo en la variable de sesión, sin embargo, tan pronto como se mueve a una nuevo método o la redirección de la variable de sesión parece estar disminuido (esta cookie es realmente más grande que 4KBs ?!) - no se puede permitir porque: sesiones funciona bien
Simplemente vacíe requestcookies para cada solicitud y vea si puede encontrar algo sospechoso. – Zimbabao