npm 包 universal-github-app-jwt 使用教程

阅读时长 4 分钟读完

简介

universal-github-app-jwt 是一个 Node.js 模块,提供了一种用于和 GitHub 应用通信握手认证的方法,支持生成和解析 JSON Web Tokens (JWT)。

安装

你可以通过 npm 直接安装 universal-github-app-jwt:

用法

在使用 universal-github-app-jwt 之前,你需要先从 GitHub 应用管理界面获取应用的私钥(PEM)和应用 ID。然后,在代码中导入 universal-github-app-jwt 模块,并配置应用的认证信息:

-- -------------------- ---- -------
----- --- - ------------------------------------

----- ------------- - ----------- ------- --------
----- --- ------- ----
-------- ------- ----------

----- ----- - ----- --- ----

----- -------------- - ------------- ----
----- ----------- - ------------- ------ -------

----- --------- - ---------------------------------- -------

其中,appPrivateKey 就是你在应用管理界面生成的 PEM 私钥;appId 是你的应用 ID;installationId 是你要验证的 GitHub 应用实例的安装 ID;accessToken 是你在安装 GitHub 应用实例时获取的访问令牌。

接下来,你可以使用 authToken 和相关参数生成 JWT 令牌,以及解析 JWT 令牌:

-- -------------------- ---- -------
----- --- - ------------------------------------

----- ------------- - ----------- ------- --------
----- --- ------- ----
-------- ------- ----------

----- ----- - ----- --- ----

----- -------------- - ------------- ----
----- ----------- - ------------- ------ -------

-- -- --- --
----- -------- - --------------------------------- ------ ----------------

-- -- --- --
----- ---------- - -----------------------------

在上面这段代码中,createJwtToken 方法接受 PEM 私钥、应用 ID 和安装 ID 作为参数,用于生成 JWT 令牌。verifyJwtToken 方法接受 JWT 令牌作为参数,返回解码后的令牌内容。

示例代码

下面是一个完整的示例,其中通过使用 universal-github-app-jwt 生成和解析 JWT 令牌,并打印出令牌的信息:

-- -------------------- ---- -------
----- --- - ------------------------------------

----- ------------- - ----------- ------- --------
----- --- ------- ----
-------- ------- ----------

----- ----- - ----- --- ----

----- -------------- - ------------- ----
----- ----------- - ------------- ------ -------

-- -- --- --
----- -------- - --------------------------------- ------ ----------------

-- -- --- --
----- ---------- - -----------------------------

------------------------

总结

universal-github-app-jwt 是一个方便的 Node.js 模块,用于和 GitHub 应用通信握手认证。通过本文提供的使用方法,你可以轻松地生成和解析 JWT 令牌,确保你的代码与 GitHub 应用实例之间的通信安全可靠。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedb23fb5cbfe1ea061112e

纠错
反馈