我在 Next.js 应用程序中使用 NextAuth 库进行身份验证,但我遇到了文档中未解决的情况。如果您可以通过检查 getServerSideProps 中的 session 是否为空并重定向到内置登录页面,我正在尝试添加一个“路由保护”。虽然这有效,但我总是在登录后重定向到主页。我尝试添加 callbackUrl 查询参数,如下所示,但它仍然无法按预期工作。我如何实现这一目标?提前致谢。
博客.js
export async function getServerSideProps(context) {
const session = await getSession(context)
if (!session) {
return {
redirect: {
destination: `/api/auth/signin?callbackUrl=${encodeURIComponent(
'http:localhost:3000/blog'
)}`,
permanent: false
}
}
}
return {
props: {
data: 'Blog data',
session
}
}
}