Javascript 使用Nookies获取令牌时发生FirebaseAuthError。(下一篇)
我正在尝试验证用户是否能够成功完成注册。为此,我希望通过cookies获取用户的令牌,如下代码所示:Javascript 使用Nookies获取令牌时发生FirebaseAuthError。(下一篇),javascript,reactjs,cookies,firebase-authentication,next.js,Javascript,Reactjs,Cookies,Firebase Authentication,Next.js,我正在尝试验证用户是否能够成功完成注册。为此,我希望通过cookies获取用户的令牌,如下代码所示: [...] export async function getServerSideProps(ctx) { try { const cookies = nookies.get(ctx) console.log(JSON.stringify(cookies, null, 2)); const toke
[...]
export async function getServerSideProps(ctx) {
try {
const cookies = nookies.get(ctx)
console.log(JSON.stringify(cookies, null, 2));
const token = await firebaseAdmin.auth().verifyIdToken(cookies.token)
const { email } = token
return {
props: { message: `${email} was successfully registered!`}
}
} catch (err) {
console.log(err)
return { props: { message: 'Error'} }
}
}
[...]
此函数返回以下错误:
错误信息:{
代码:“身份验证/参数错误”,
消息:“解码Firebase ID令牌失败。请确保传递了表示ID令牌的整个字符串JWT。请参阅。”
对于
有关如何检索ID令牌的详细信息。“}
我相信我一定是误用了nookies.get(ctx),我这么说是因为检索到的cookie(令牌)等于一个“”,这对我来说没有多大意义。那么,我如何正确使用nookies来获取该令牌
如果有人能帮我找出我遗漏了什么,我将不胜感激。
提前谢谢
编辑:创建用户帐户,电子邮件和密码存储在Firebase Auth中。只有这段代码不起作用。从下一个10.0.4版开始,您可以在没有Nookie的情况下获得Cookie
const cookies = ctx.req.cookies
尝试这种方法,如果您仍然将令牌设置为空,请检查您设置cookie的方式