You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NextAuth中JWT回调执行后Session回调未触发的问题求助

NextAuth中JWT回调执行后Session回调未触发的问题求助

各位大佬好,我在使用NextAuth时碰到了一个头疼的问题:代码里的JWT回调能正常执行,甚至在回调里console.log(token)都能输出预期内容,但Session回调完全没被调用,根本看不到里面的日志输出。

我已经尝试过直接返回未修改的token,不做任何字段添加,但Session回调还是没触发,实在找不到原因了。下面是我的完整代码:

import NextAuth from "next-auth/next"
import Credentials from "next-auth/providers/credentials"

export const authOptions = {
  providers:[
    Credentials({
      name:"Credentials",
      credentials:{
        uid:{label:"uid",type:"text"},
        password:{label:"password",type:"text"}
      },
      async authorize(credentials,req){
        try{
          return {
            uid:123,
            role:"user"
          }
        }catch(e){
          console.log(e)
        }
      }
    })
  ],
  secret:process.env.NEXTAUTH_SECRET,
  session:{
    jwt:true
  },
  callbacks:{
    async session({ session, user, token }) {
      console.log("this")
      console.log(session);
      if (token) {
        session.user.uid = token.uid;
        session.user.role = token.role;
      }
      return session;
    },
    async jwt({ token, user ,session}) {
      token.uid = user.uid;
      token.role = user.role;
      console.log(token);
      //working perfectly till here
      return token;
    },
    async signIn({account,profile,user}){
      if(account.provider === "credentials" && user){
        return true
      }
      return false
    }
  }
}

const handler = NextAuth(authOptions)

export {handler as GET,handler as POST}

有没有大佬能帮我分析下问题出在哪?

备注:内容来源于stack exchange,提问作者Arjav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 08:53:05