@node-oauth/oauth2-server
一个完整、合规且经过充分测试的模块,用于在 Node.js 中实现 OAuth2 服务器。
注意:本项目是从 oauthjs/node-oauth2-server 分叉而来,由于原项目似乎已被废弃,我们继续维护此项目。请查看我们的问题面板,讨论下一步计划和项目的未来。
安装
npm install @node-oauth/oauth2-server
@node-oauth/oauth2-server
模块与框架无关,但有几个官方支持的适配器可用于流行的 HTTP 服务器框架,如 Express 和 Koa(非我们维护)。
如果你使用这些框架之一,强烈建议使用相应的适配器模块,而不是自己开发。
特性
- 支持
authorization_code
、client_credentials
、refresh_token
和password
授权,以及扩展授权,并支持作用域。 - 可与promises、ES6 生成器和async/await(使用 Babel)一起使用。
- 完全符合 RFC 6749 和 RFC 6750 标准。
- 隐式支持任何形式的存储,如 PostgreSQL、MySQL、MongoDB、Redis 等。
- 支持 PKCE
- 完整的测试套件。
文档
文档托管在 Read the Docs 上。我们提供多个版本的文档:
如果文档中有不清楚或缺失的内容,请提出问题。
示例
大多数用户应参考我们的 Express(活跃) 或 Koa(非我们维护) 示例。
更多示例可以在这里找到:https://github.com/14gasher/oauth-example
版本 5 注意事项
从版本 5.x
开始,我们移除了对回调和 Promise 的双重支持。
此版本仅支持 Promise / async/await。
在此版本中,我们还将 engine
升级到 Node 16,因为 14 已被弃用。
从 OAuthJs 和 3.x 迁移
版本 4.x 不应该有硬性破坏,但是有许多改进和修复可能与 <= 3.x 的特定行为不兼容。
更多信息,请阅读更新日志或如果您认为有什么意外不工作,请提出问题。
支持的 NodeJs 版本
本项目支持 NodeJS LTS 发布 中的节点版本,重点关注:
- 维护 LTS
- 活跃 LTS
- 当前版本
为本项目贡献
在采取行动之前,请阅读我们的贡献指南。 无论如何,请在提交拉取请求之前先开启一个问题,以了解您的预期贡献是否有机会被合并。