📜  next-auth 与linkedin 提供程序 - Javascript (1)

📅  最后修改于: 2023-12-03 15:33:06.469000             🧑  作者: Mango

Next-Auth与LinkedIn提供程序 - JavaScript

Next-Auth是一个开源的认证库,它为Node.js项目提供了一个简单和可定制的认证体验。LinkedIn提供程序是Next-Auth的一个插件,它允许用户使用LinkedIn帐户进行认证。

如何使用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,
    }),
  ],
  // ...
});

除了clientIdclientSecret之外,还可以定义其他选项,例如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帐户快速、轻松地进行身份验证。