用 Node 实现了一下 JustAuth

2022 年 9 月 21 日
 notot

oauth2 all in one

本项目参考了 Java 项目 JustAuth 的设计,将所有的第三方登录都整合到一个项目中,方便使用。 因为 JustAuth 项目是 Java 项目,Node 项目中没有类似的项目,所以本项目就诞生了。 原项目地址:JustAuth

设计上基本上保持一直,只是将 Java 项目中的代码翻译成了 Node 项目中的代码。做了一些小的改动,比如将 Java 项目中的枚举类型改成了字符串类型,因为 Node 项目中没有枚举类型。

目前支持的第三方登录有:

因为我公司只用到了这两个,其他的第三方登录后续会陆续实现。

项目地址:oauth2-aio

使用方法

安装

npm install oauth2-aio

使用

import {AuthGoogleRequest} from "../src";

const googleAuth = new AuthGoogleRequest({
  clientId: "clientId",
  clientSecret: "clientSecret",
  redirectUri: "redirectUri",
  scopes: []
})

const redirectUrl = googleAuth.authorize('32412341')
console.log(redirectUrl)
// exec(`open ${redirectUrl}`)

const r = await googleAuth.login({
  code: 'code'
})
console.log(r)
4557 次点击
所在节点    Node.js
4 条回复
wuxqing
2022 年 9 月 22 日
Passport.js 就是这类项目
qfdk
2022 年 9 月 22 日
为啥不用 passport.js ?
notot
2022 年 9 月 24 日
哈哈哈 我都不知道
humbass
2022 年 11 月 2 日
@qfdk 好东西啊 ,,必须赞一下。

造轮子前还真是有必要查下是否有已存在的轮子

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/881996

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX