我在我的应用程序中实现了nextAuth,但在UI上遇到了一个小故障问题,当页面重新加载时,我可以看到Signed in as ../ Not signed in
一秒钟,直到获取新的会话。我找到了NextJS 12和更早版本的此问题的解决方案,我在没有getServerSideProps()
的NextJS 13中实现此问题有一些困难。
'use client'
import './globals.css'
import { getSession, SessionProvider } from 'next-auth/react'
export default function RootLayout({ session, children }) {
return (
<html lang="en">
<head />
<body>
<SessionProvider session={session}>
{children}
</SessionProvider>
</body>
</html>
)
}
上面的代码如何实现这个函数?
export async function getServerSideProps(ctx) {
return {
props: {
session: await getSession(ctx)
}
}
}
1条答案
按热度按时间ee7vknir1#
获取服务器会话:当从服务器端调用时,即在API路由或getServerSideProps中调用时,我们建议使用此函数而不是getSession来检索会话对象。当您将NextAuth.js与数据库一起使用时,此方法特别有用。