Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

251
Visualizações
Obtenga un identificador de usuario único, que no cambia incluso al actualizar la página

¿Hay algún truco para obtener un identificador de usuario único, que no cambie, cuando el usuario actualiza el navegador? Probé socket.io y sessionID de express, pero cambian cuando el usuario actualiza el navegador.

¿Por qué? Estoy tratando de crear un juego sin necesidad de iniciar sesión. La clase Usuario creará un lobby con amigos y luego iniciará el juego, que estará bloqueado para cualquier otro usuario, pero quiero hacer la característica, que si el el usuario que ya comenzó/se unió a cualquier juego actualizará el navegador, se volverá a conectar a su juego.

Ya configuré la base de datos que está lista para el identificador de usuario único, por lo que el lobby/juego sabrá quién estará autorizado para unirse y quién no.

Código de cómo se configuran mis sesiones:

 const sessions = require('express-session'); ... app.use(sessions({ secret: "thisismysecretkey", saveUninitialized: true, resave: false })); ... app.post("/lobby/:id", (req, res) => { console.log(req.sessionID) });

Con esta configuración, el ID de sesión cambia constantemente cuando las solicitudes son del mismo usuario.

PD Sí, el código secreto no es seguro, lo cambiaré después de hacerlo funcionar.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Descubrí por qué mi ID de sesión cambiaba con cada solicitud. Fue porque no estaba guardando nada en la sesión (porque solo estaba imprimiendo el ID de la sesión, preguntándome si cambiaría) , por lo que la sesión se eliminó y, en una nueva solicitud, se creó la nueva sesión, etc. Debería haber leído más documentación. en sesiones express.

De todos modos, si alguien se preguntaba cómo guardar algo en la sesión, aquí hay un ejemplo simple que cuenta cuántas veces visitó el sitio web.

 app.get("/test", function (req, res) { console.log(req.sessionID, req.session); if (req.session.page_views) { req.session.page_views++; res.send("You visited this page " + req.session.page_views + " times"); } else { req.session.page_views = 1; res.send("Welcome to this page for the first time!"); } });

Y si su ID de sesión todavía está cambiando, verifique la configuración de su sesión (esta funciona)

 app.use( session({ secret: "thisismysecretkey", saveUninitialized: true, resave: true, cookie: { secure: false, }, }) );
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda