小编Ngu*_*ịnh的帖子

NextAuth、NextJS - getToken 在中间件函数中始终返回 null

环境


  • NextJS:12.2.2
  • NextAuth:4.10.3(最新)
    • 提供者:凭证
  • 浏览器:谷歌浏览器
  • 节点:LTS

问题


大家好

我使用 NextAuth 通过凭证提供程序和策略 jwt 进行身份验证,但函数 getToken 在我的中间件中始终返回 null,而 NextAuthOptions 中的 jwt 回调不返回 null

我检查了cookie存储中的令牌并尝试解码令牌,结果解码仍然正确

变量环境 NEXTAUTH_SECRET 已添加到文件 .env.local 中

代码


src/page/api/auth/[...nextauth].ts

export const decode = async (data: any) => {
  const { secret, token } = data;
  const verify = jwt.verify(token, secret) as JWT;
  return verify;
};
export const encode = async (data: any) => {
  const { secret, token } = data;

  const payload = {
    username: token.username,
    email: token.email, …
Run Code Online (Sandbox Code Playgroud)

middleware jwt next.js next-auth

6
推荐指数
1
解决办法
3383
查看次数

标签 统计

jwt ×1

middleware ×1

next-auth ×1

next.js ×1