npm 包 @hub9/angular-oauth-client 使用教程

介绍

@hub9/angular-oauth-client是一个基于Angular的OAuth2.0认证库,提供了一系列的组件和服务来帮助Angular开发者进行OAuth2.0认证,方便开发者集成OAuth2.0认证到他们的应用中。

安装

使用npm安装:

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

使用

配置

首先,在你的 Angular 项目中导入 OAuthModule

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

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

注意sendAccessToken字段需要设置为true以使用资源服务器。

服务

OAuth服务是核心服务,提供了OAuth所需的方法,如登陆和登出并保持OAuth2.0 token。服务提供两种主要方法:

  • login() - 无参数调用login 将重定向到身份验证服务器。
  • logOut() - 删除本地 token 并将用户从应用登录状态中注销。

在你的组件中注入OAuthService服务:

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

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

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

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

Guard

Guard服务用于保护路由页面,例如我们需要登陆后才能访问用户中心页面。OAuthGuard是一个预定义的Guard,在Angular中使用非常简单。

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

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

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

示例代码

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

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

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

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

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

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

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

结论

@hub9/angular-oauth-client是一个方便易用的OAuth2.0认证库,在Angular项目中集成OAuth2.0认证更加方便,提高开发效率和安全性。

同时,Guard服务的使用也让我们的路由变得更加安全,只有认证之后才能够进行相应的操作。

值得一提的是,@hub9/angular-oauth-client还支持在LocalStorage存储token,避免了每次页面刷新都要重新认证的问题。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60066bbf967216659e244143


猜你喜欢

  • npm 包 @iota-pico/core 使用教程

    前言 @iota-pico/core 是一个基于 IOTA protocal 的 JavaScript 库,适用于前端和 Node.js 应用开发。它提供了构建 IOTA 应用所需的核心功能。

    3 年前
  • npm 包 collection.min.js 使用教程

    collection.min.js 是一款基于 JavaScript 的 npm 包,它为开发者提供了一系列方便的集合处理方法,如数组操作、集合过滤、查找、排序等等。

    3 年前
  • npm 包 colorize.min.js 使用教程

    前言 在前端开发中,经常需要通过代码来操作页面颜色。传统的方法是使用 CSS 的属性来控制,但是随着前端框架的不断发展,我们需要更加简便快速的操作页面颜色。这时候, npm 包 colorize.mi...

    3 年前
  • npm包com.min.js使用教程

    什么是npm包com.min.js npm是Node.js包管理器,用于管理Node.js的第三方模块,它是世界上最大的软件仓库之一。com.min.js是一个专为前端设计的JavaScript库,它...

    3 年前
  • npm 包 @iota-pico/data 使用教程

    前言 @iota-pico/data 是一个使用 IOTA 数据结构的 JavaScript 库,可以用于创建和操作 Merkle 树和散列列表。本篇文章将介绍该库的使用方法,并提供一些示例代码。

    3 年前
  • npm 包 @iota-pico/lib-browser 使用教程

    简介 @iota-pico/lib-browser 是一个基于 IOTA Tangle 技术开发的 JavaScript 库,在前端项目中使用可以轻松地实现钱包和智能合约的集成。

    3 年前
  • npm 包 @iota-pico/lib-nodejs 使用教程

    简介 @iota-pico/lib-nodejs 是一个 Node.js 版本的 IOTA Pico 实现库。它提供了一个完整的 Pico 协议的实现,可以让开发者快速实现 Pico 协议,并在 IO...

    3 年前
  • npm 包 css.min.js 使用教程

    在现代 Web 开发中,CSS 是不可或缺的一部分。我们常常需要在我们的网页中使用各式各样的 CSS 样式文件来装饰网页,美化用户界面,或实现一些酷炫的动画效果。然而,在使用 CSS 样式时,往往会出...

    3 年前
  • npm 包 custom.min.js 使用教程

    在前端开发中,我们经常需要使用一些 JavaScript 库和插件来实现一些功能。npm 是一个非常常用的包管理器,它可以方便地安装、升级和管理我们所需要的 JavaScript 包。

    3 年前
  • npm 包 community.min.js 使用教程

    1. 简介 community.min.js 是一个基于 jQuery 的前端组件库,包含众多实用的 UI 组件和工具函数,可以快速完成各种前端开发任务。 2. 安装和配置 首先需要安装 Node....

    3 年前
  • npm 包 @irae/express-middleware-timer 使用教程

    在开发前端应用时,经常需要对接后台接口,而在调试和性能优化时,需要对接口的响应时间进行监控和记录分析。为此,我们可以使用 npm 包 @irae/express-middleware-timer 来方...

    3 年前
  • npm 包 @iota-pico/pal-nodejs 使用教程

    IOTA 是一种基于 DAG (Directed Acyclic Graph) 的分布式账本技术,是物联网(IoT)领域的翘楚,而 @iota-pico/pal-nodejs 是一个专门为 IOTA ...

    3 年前
  • npm 包 @iota-pico/pow-box 使用教程

    前言 在进行 IOTA 的开发过程中,使用 Pow(证明权重)算法是不可避免的。在 IOTA 中,这个过程需要进行 CPU 计算,如要进行大量的计算时需要消耗大量时间。

    3 年前
  • npm 包 @iotame/builtins 使用教程

    前言 随着前端开发的快速发展,前端工程化已经成为一个趋势。处理前端开发过程中的项目依赖管理,npm 成为了前端开发重要的工具之一。在众多的 npm 包中,@iotame/builtins 这个包提供了...

    3 年前
  • npm 包 @ipfn/cell-cid 使用教程

    前言 在前端开发中,我们经常需要进行数据的存储和传输。CID(Content Identifier)是一个用于唯一标识数据的标准格式。在以太坊应用等场景下,CID 更是扮演着重要的角色。

    3 年前
  • npm 包 @ipfn/cell-codec-pb 使用教程

    简介 在前端开发中,常常需要将数据进行序列化和反序列化。Protobuf 是一种高效的数据传输方式,它可以帮助我们在不同平台和语言之间传输多种复杂的数据类型。而 @ipfn/cell-codec-pb...

    3 年前
  • npm 包 @ipfn/cell-codecs 使用教程

    简介 @ipfn/cell-codecs 是一个 JavaScript 包,为 IPFS 协议提供了数据编码解码的功能。它可以帮助开发者在 IPFS 协议中实现数据的序列化和反序列化,从而在 IPFS...

    3 年前
  • npm 包 @ipfn/cell-pb 使用教程

    简介 @ipfn/cell-pb 是一个用于在 JavaScript 中处理 Protocol Buffers 数据格式的 npm 包。Protocol Buffers 是一种可扩展、语言无关、平台无...

    3 年前
  • npm 包 customer.min.js 使用教程

    简介 customer.min.js 是一个基于 jQuery 的轻量级客户端模板引擎,它可以帮助我们在前端实现模板渲染,十分方便快捷。 安装 首先,你需要确保已经安装了 Node.js。

    3 年前
  • npm 包 @ipfn/cells 使用教程

    前言 @ipfn/cells 是一个 Node.js 中用于高效管理表格数据的 npm 包。使用它可以轻松地创建、修改和删除单元格、行、列,以及整个表格的内容。本教程将详细介绍如何安装和使用 @ipf...

    3 年前

相关推荐

    暂无文章