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

223
Visualizações
Next.js Obtener datos de usuario en SSR

Estoy muy confundido acerca de cómo hacer que el usuario actual con SSR obtenga algunos datos de usuario.

He estado usando la API de contexto con reaccionar, y ha estado funcionando hasta ahora, hasta que necesito SSR para obtener datos de una API. Quiero obtener la identificación de usuario actual, para poder obtener un token que esté almacenado en Firestore.

autenticación.js

 export const AuthContext = createContext(); export function AuthProvider({ children }) { const [currentUser, setCurrentUser] = useState(null); useEffect(() => { onAuthStateChanged(auth, (user) => { setCurrentUser(user); }); }, []); return ( <AuthContext.Provider value={{ currentUser }}> {children} </AuthContext.Provider> ); }

RSS

 export async function getStaticProps() { const api = { auth: "token", }; //fetch api return { props: { data, }, }; }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Los SDK de Firebase están destinados a usarse solo en el lado del cliente, por lo que no podrá obtener el usuario actual en el lado del servidor a menos que configure una cookie. Cada vez que un usuario inicia sesión, puede llamar a su API, que creará una cookie de sesión con Firebase Admin y la configurará.

 app.post('/sessionLogin', (req, res) => { const idToken = req.body.idToken.toString(); const expiresIn = 60 * 60 * 24 * 5 * 1000; return admin .auth() .createSessionCookie(idToken, { expiresIn }) .then( (sessionCookie) => { const options = { maxAge: expiresIn, httpOnly: true, secure: true }; res.cookie('session', sessionCookie, options); res.end(JSON.stringify({ status: 'success' })); }, (error) => { res.status(401).send('UNAUTHORIZED REQUEST!'); } ); });

Puede leer la cookie de session en getServerSideProps y verificarla para obtener el UID del usuario:

 const decoded = await admin.auth().verifySessionCookie(sessionCookie)
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