用于访问 GitHub v3 REST API 的 Go 客户端库,按资源提供类型化的调用接口。
octokit/octokit.js
面向浏览器、Node.js 和 Deno 的一体化 GitHub SDK,整合 REST、GraphQL、GitHub App、Webhook 与 OAuth 功能。
- Star
- 7,874
- Fork
- 1,287
- 未关闭 Issue
- 55
- 最近提交
- 10天前
这是什么?
octokit.js 是 `octokit` npm 包,把 Octokit 的主要库打包在一起,方便在 JavaScript 和 TypeScript 中调用 GitHub 平台 API。API 客户端支持 REST 请求(通过 `octokit.rest.*` 方法或 `octokit.request`)和 GraphQL 查询,并内置认证、自动重试和速率限制节流。
该包还提供 App 客户端,用于 GitHub App、安装令牌、Webhook 接收与签名校验,以及 OAuth 登录流程。`createNodeMiddleware` 可在 Node 原生 http 服务或 Express 中直接生成接收 Webhook 和处理 OAuth 回调的路由。Action 客户端目前仍在开发中。
SDK 可运行于现代浏览器、Node.js(需 18 及以上以使用原生 fetch)和 Deno,并附带 TypeScript 类型声明。如果只需要部分功能,也可以单独安装对应子模块。
核心功能
- 01通过同一个客户端调用 GitHub REST 和 GraphQL API。
- 02内置 token 与 GitHub App 等多种认证方式。
- 03默认提供请求自动重试和速率限制节流。
- 04为 REST 和 GraphQL 结果提供分页辅助方法。
- 05通过 Node 中间件接收并校验 Webhook,并处理 OAuth 登录流程。
- 06附带 TypeScript 类型声明,可在浏览器、Node.js 和 Deno 中运行。
适用场景
- 开发自动创建 Issue、评论或 Pull Request 的机器人或自动化脚本。
- 编写响应已安装仓库 Webhook 事件的 GitHub App。
- 为 Web 应用添加 GitHub OAuth 登录。
- 在前端或 Node.js 服务中用 GraphQL 查询 GitHub 数据。
快速上手
- 1
使用 npm 安装 octokit 包
npm install octokit - 2
导入 Octokit 并使用个人访问令牌调用 GitHub API
使用前须知
- 除非自行提供 fetch 实现,否则需要 Node 18 或更高版本。
- 默认情况下 Node.js 不会使用标准的代理环境变量,需要自定义带代理 agent 的 fetch。
- 由于使用条件导出,需要在 tsconfig.json 中将 moduleResolution 和 module 设置为 node16。
收录于专题
标签
常见问题
- octokit.js 是什么?
- 面向浏览器、Node.js 和 Deno 的一体化 GitHub SDK,整合 REST、GraphQL、GitHub App、Webhook 与 OAuth 功能。 octokit.js 是 `octokit` npm 包,把 Octokit 的主要库打包在一起,方便在 JavaScript 和 TypeScript 中调用 GitHub 平台 API。API 客户端支持 REST 请求(通过 `octokit.rest.*` 方法或 `octokit.request`)和 GraphQL 查询,并内置认证、自动重试和速率限制节流。
- octokit.js 可以免费使用吗?用的什么许可证?
- octokit.js 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- octokit.js 还在维护吗?
- 活跃维护中。octokit.js 最近一次提交是在 2026年10月28日。
- octokit.js 适合用来做什么?
- 开发自动创建 Issue、评论或 Pull Request 的机器人或自动化脚本。 编写响应已安装仓库 Webhook 事件的 GitHub App。 为 Web 应用添加 GitHub OAuth 登录。 在前端或 Node.js 服务中用 GraphQL 查询 GitHub 数据。
- octokit.js 怎么安装和运行?
- 使用 npm 安装 octokit 包: npm install octokit 导入 Octokit 并使用个人访问令牌调用 GitHub API
- 在哪里获取 octokit.js?
- 源代码和安装说明在 GitHub 上:https://github.com/octokit/octokit.js
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
开源的产品集成平台,支持 1000 多个 API,负责授权、令牌刷新和认证请求。
根据 OpenAPI/Swagger 定义生成 API 客户端 SDK、服务端桩代码和文档的命令行工具。
一款运行在终端中的 HTTP API 客户端,可替代 Postman 和 Insomnia,请求以 YAML 文件保存。
离线、原生支持 Git 的 API 工作台,将请求、测试和文档保存为纯文本 .void 文件。
用于 Databricks 平台的 Python SDK,可在 Python 代码中调用 Databricks REST API。