📅  最后修改于: 2023-12-03 15:33:06.469000             🧑  作者: Mango
Next-Auth是一个开源的认证库,它为Node.js项目提供了一个简单和可定制的认证体验。LinkedIn提供程序是Next-Auth的一个插件,它允许用户使用LinkedIn帐户进行认证。
首先,需要安装next-auth
。
npm install next-auth
然后,在代码中添加LinkedIn提供程序。
// pages/api/auth/[...nextauth].js
import NextAuth from "next-auth";
import LinkedInProvider from "next-auth/providers/linkedin";
export default NextAuth({
providers: [
LinkedInProvider({
clientId: process.env.LINKEDIN_CLIENT_ID,
clientSecret: process.env.LINKEDIN_CLIENT_SECRET,
}),
],
// ...
});
除了clientId
和clientSecret
之外,还可以定义其他选项,例如scope
(请求LinkedIn的权限)和authorize
(自定义LinkedIn的OAuth2认证流程)。
最后,在页面或组件中使用useSession
钩子来检查当前用户是否经过身份验证。
import { useSession } from "next-auth/client";
function MyPage() {
const [session, loading] = useSession();
if (loading) {
return <p>Loading...</p>;
}
if (!session) {
return <p>Access Denied</p>;
}
return <p>Welcome, {session.user.name}!</p>;
}
export default MyPage;
使用Next-Auth和LinkedIn提供程序可以轻松地将LinkedIn的身份验证集成到任何Node.js项目中。只需几行代码就可以开始使用,用户可以使用他们的LinkedIn帐户快速、轻松地进行身份验证。