Javascript 在auth0中获取accessToken

Javascript 在auth0中获取accessToken,javascript,reactjs,next.js,auth0,Javascript,Reactjs,Next.js,Auth0,我正在使用auth0和nextJS 下一步我要做的是:当用户添加他的凭证并登录时,他被重定向到回调API 这里呢 import auth0 from '../../utils/auth0'; export default async function callback(req, res) { try { await auth0.handleCallback(req, res, { redirectTo: '/' }

我正在使用auth0nextJS

下一步我要做的是:当用户添加他的凭证并登录时,他被重定向到
回调
API

这里呢

    import auth0 from '../../utils/auth0';

    export default async function callback(req, res) {
      try {
        await auth0.handleCallback(req, res, {
          redirectTo: '/'
        });
      } catch (error) {
        console.error(error);
        res.status(error.status || 400).end(error.message);
      }
    }
我想根据令牌重定向用户
如果应用程序是一个简单的用户或管理员,那么解码令牌将获得数据

如果他是管理员,他应该被重定向到管理员页面,如果不是用户页面

所以我做了这样的事情:

    import auth0 from '../../utils/auth0';

    export default async function callback(req, res) {
       const tokenCache = auth0.tokenCache(req, res);
       const { accessToken } = await tokenCache.getAccessToken();
       console.log(accessToken) 
      try {
        await auth0.handleCallback(req, res, { redirectTo: '/' });
      } catch (error) {
        console.error(error);
        res.status(error.status || 400).end(error.message);
      }
    }

因此,我希望在该函数中获取令牌,以便能够重定向不同页面上的用户,但如果我希望在此处获取令牌,则会遇到以下问题:

用户没有有效的会话

如果我删除了与令牌相关的代码,用户将被重定向,但是我需要在这里获取令牌,以便能够对用户进行检查

我如何才能在这个
回调函数中获得令牌并实现我上面描述的功能?

使用库的v1.2.0,您可以在调用过程中访问标识令牌

从'@auth0/nextjs-auth0'导入{handleAuth,handleLogin,handleCallback};
const afterCallback=(请求、恢复、会话、状态)=>{
log(session.idToken);
如果(!session.user.isAdmin){
抛出新的UnauthorizedError(“用户不是管理员”);
}
返回会议;
}
导出默认handleAuth({
异步回调(req、res){
试一试{
等待handleCallback(req,res,{afterCallback});
}捕获(错误){
res.status(error.status | | 500).end(error.message);
}
}
});


但是,请记住,您通常应该使用客户端应用程序。如果需要将用户信息中继到客户端,则应将其放置在id_令牌中。访问令牌供API使用,您的客户端应用程序不应依赖于其内容格式或语义,因为设计的访问令牌没有定义的格式。

您是否检查了NextJS GitHub repo中的auth0示例?