npm 包 hapi-auth-bearer-token 使用教程

阅读时长 4 分钟读完

前言

hapi-auth-bearer-token 是一个基于 Hapi 框架的用于身份验证的 npm 包。本文将介绍 hapi-auth-bearer-token 的原理、使用步骤以及相关示例代码。

hapi-auth-bearer-token 的原理

hapi-auth-bearer-token 的原理比较简单,它利用 Hapi 插件机制,对请求头的 Authorization 字段进行解析,并在验证通过的情况下,将解析后的 token 存储在 request.auth.credentials 中供其他插件或处理函数使用。

hapi-auth-bearer-token 的使用步骤

安装 hapi-auth-bearer-token

可以使用 npm 进行安装,命令为:

注册插件

在 Hapi 的 Server 实例中注册 hapi-auth-bearer-token 插件:

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

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

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

配置策略

在注册插件后,需要在 Server 实例中定义验证策略。这里我们定义一种 token 的验证策略:

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

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

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

这里的 validate 函数是验证逻辑的实现,它返回的 isValid 表示 token 是否有效,credentials 是可选的,如果存在会被存储到 request.auth.credentials 中,以便其他插件使用。

路由配置

有了验证策略后,我们就可以对路由进行配置了。只需要在需要验证 token 的路由上添加 auth 配置即可:

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

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

发送请求

有了验证策略和路由配置,我们就可以发送包含 token 的请求了。在请求的时候,只需要在 Authorization 头中添加 token 即可。如果不想使用头信息,还可以通过 query string 的方式传递 token。

例如,以下是使用 curl 命令发送的一个请求:

总结

通过本文的介绍,我们可以看到 hapi-auth-bearer-token 的使用非常简单,只需要注册插件、定义验证策略、路由配置就可以上手使用。对于需要进行身份验证的项目来说,该插件是一个不错的选择。希望本文对大家有所帮助。

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

纠错
反馈