Typescript NestJS Passport Linkedin战略

Typescript NestJS Passport Linkedin战略,typescript,passport.js,nestjs,Typescript,Passport.js,Nestjs,我有一个定义了JwtStrategy的NestJS应用程序。现在我想要的是包括LinkedIn战略。有人能向我解释一下这是如何实现的吗?目前,我使用我的FE Angular应用程序执行重定向和将代码交换为accessToken等操作。由于存储我的clientId、secret和其他内容并不是真正的保存,我想将其移动到我的api端NestJS应用程序。我讨厌链接到文章或代码,因为这是一个很好的问题,所以我将在答案的底部提供参考资料。在大多数情况下,这可以像你使用JWT策略一样实现,你会找到一个你想

我有一个定义了JwtStrategy的NestJS应用程序。现在我想要的是包括LinkedIn战略。有人能向我解释一下这是如何实现的吗?目前,我使用我的FE Angular应用程序执行重定向和将代码交换为accessToken等操作。由于存储我的clientId、secret和其他内容并不是真正的保存,我想将其移动到我的api端NestJS应用程序。

我讨厌链接到文章或代码,因为这是一个很好的问题,所以我将在答案的底部提供参考资料。在大多数情况下,这可以像你使用JWT策略一样实现,你会找到一个你想要使用LinkedIn OAuth的passport策略。例如,你编写你的LinkedIn策略,确定最好的方法来确定用户是否已经存在于你的系统电子邮件中,通常是一个好的电子邮件,并用他们保存他们的LinkedIn令牌。从那里,您将创建一个自定义保护,用于检查req.isAuthenticated,并返回是否已验证。您可能还需要一个序列化类来处理passport的OAuth响应的序列化和反序列化。最后,如果您正在使用OAuth,那么您可能要处理会话,因此您可能需要express会话包,并且您可能需要添加Redis以保留会话令牌