我使用 next-auth 进行身份验证,并使用凭证提供程序进行登录,我的 API 返回一个包含 accessToken 的对象,如下所示:
{ "token" : "UzI1NiIsInR5cCI..." },
我返回一个类似的对象,其中包含authorize属性中的令牌CredentialsProviders,而我的session回调如下所示:
session({ session, token }) {
session.data = {
...session.user,
...token.user,
};
session.accessToken = token.accessToken;
return session;
}
Run Code Online (Sandbox Code Playgroud)
我useSession在客户端代码中使用该钩子,如下所示:
const { data: session, status } = useSession();
Run Code Online (Sandbox Code Playgroud)
访问用户的令牌以发出 API 请求。这安全吗?或者还有其他方法可以实现这一目标吗?请记住,尽管我使用的是 Next.js,但该应用程序将完全在客户端呈现,因此请记住这一点。我问这个问题是因为 Next.js 的大多数文档都是以 SSR 为重点的。