npm 包 feathers-mongoose-casl 使用教程

简介

feathers-mongoose-casl 是一款用于 FeathersJS 框架的权限管理插件,它基于 Mongoose 操作 MongoDB 数据库,并使用 CASL(自己定义语言)来对用户对数据库的 CRUD 操作进行控制。本文将简单介绍该插件的安装和使用方法,以及示例代码。

安装

你可以在终端通过 npm 安装该插件:

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

同时,确保你已经安装了 FeathersJS 和 Mongoose。

使用

基本配置

为了使用此插件,您需要在 FeathersJS 服务中配置以下的一些属性,例如:

-- ------

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

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

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

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

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

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

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

CASL 语法

此插件默认使用 CASL 作为其权限管理语言。

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

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

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

您可以在 read, create, updateremove 中使用任何 Mongoose 操作符运算符或查询。

API 端点

接下来在您的 FeathersJS 服务中添加一些 API 端点。

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

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

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

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

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

此时,API 端点只会响应符合您的 CASL 规则的请求。

示例代码

-- ------

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


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

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

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

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

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

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

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

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

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

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

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

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

结论

feathers-mongoose-casl 是一款极其强大的 FeathersJS 插件。它能够绝对保护您的 MongoDB 数据库并且防止未经授权的数据访问。本篇文章只包含了最基本的使用方式。如果需要更多信息,请参考 官方文档

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


猜你喜欢

  • npm 包 @absolunet/manager 使用教程

    介绍 npm 包 @absolunet/manager 是由 AbsoluNET 开发的一个前端项目管理工具。它可以帮助开发者快速创建、初始化、编译和打包前端项目。

    5 年前
  • npm 包 @babel/helper-simple-access 使用教程

    什么是 @babel/helper-simple-access @babel/helper-simple-access 是一个用于简化 Babel 插件开发的辅助工具类。

    5 年前
  • npm包@babel/helper-module-transforms使用教程

    在现代的前端开发中,我们经常会使用到Babel这样的工具来进行代码转换和处理。而@babel/helper-module-transforms这个npm包则是Babel工具中的一个关键组件,用于将Ja...

    5 年前
  • npm 包 2muchcoffee-react-scripts2 使用教程

    在前端领域,使用 npm 包已经成为了非常普遍的做法。而在 React 开发中,npm 包 2muchcoffee-react-scripts2 更是备受青睐。本文将详细介绍这个 npm 包的使用方法...

    5 年前
  • npm 包 2muchcoffee-react-scripts 使用教程

    2muchcoffee-react-scripts 是一个用于打包 React 项目的 npm 包,其可以方便地管理 React 项目的各种依赖和模块,以及完成项目的打包、编译和发布等操作。

    5 年前
  • npm 包 @babel/helper-create-class-features-plugin 使用教程

    前言 在前端开发中,我们经常会使用到各种工具,其中之一就是 Babel。Babel 是一个 JavaScript 编译器,用于将 ES6+ 代码转换为向后兼容的 JavaScript 代码,以使其能在...

    5 年前
  • npm 包 telegram-typings 使用教程

    前言 在使用 Telegram Bot 开发的过程中,为了方便发送消息、接收用户输入、上传多媒体等操作,通常会用到 Telegram Bot API。Telegram 提供了官方的 Bot API 接...

    5 年前
  • npm 包 sandwich-stream 使用教程

    在前端开发中,我们经常需要对数据进行处理和转换。在处理数据过程中,有时候需要将数据拆分成一段一段的,然后再进行处理,这时候就可以使用 stream 技术。stream 是 Node.js 中用于处理大...

    5 年前
  • npm 包 koa-validate 使用教程

    Koa-validate 是一个用于 Koa 框架的验证器。它通过验证中间件来处理请求,并在请求体有误时返回错误消息。 安装指南 在我们开始之前,我们需要确保我们已经在我们的应用程序中安装了koa。

    5 年前
  • npm 包 koa-resource-router 使用教程

    什么是 koa-resource-router? Koa 是一个轻量级的 Web 框架,非常适合用于构建 Web 应用程序。koa-resource-router 是一个 Koa 的资源路由管理器,它...

    5 年前
  • npm 包 Indicative 使用教程

    Indicative 是一个 Node.js 的验证库,用于验证数据对象的属性值是否符合指定的规则。Indicative 可以用于前端和后端开发,对于前端来说,Indicative 可以方便地验证表单...

    5 年前
  • npm 包 x-proxy 使用教程

    随着前端开发的快速发展,越来越多的开源库和框架被推向市场。x-proxy 是一个强大的 npm 包,可以让你在前端开发中方便地实现代理服务器的功能。在本文中,我们将介绍 x-proxy 的使用方法,并...

    5 年前
  • npm 包 function-inspector 使用教程

    前言 JavaScript 是一门动态语言,并不像其他编译型语言那样有完整的类型定义,这使得在开发中有时会遇到一些问题,比如函数的参数类型、返回值类型等。 虽然现在 TypeScript 已经成为了前...

    5 年前
  • npm 包 x-select 使用教程

    介绍 在前端开发中,经常需要开发一些表单界面,特别是一些需要选择的数据项,在实现多选、单选、级联选择等操作时,我们需要一个可以快速实现这些功能的组件库。针对这个需求,我们可以选择 npm 包中的 x-...

    5 年前
  • npm 包 x-templates 使用教程

    什么是 x-templates? x-templates 是一个基于 Node.js 的 npm 包,它是一个简单、命令行友好的 HTML 模板引擎。它可以在 Node.js 应用程序中轻松地创建 H...

    5 年前
  • npm 包 farmhash 使用教程

    在前端开发中,我们经常需要对数据进行哈希处理,以实现快速的数据查询和比对。此时,farmhash 可以成为我们的一个好选择,它是一个快速的哈希函数库,提供了比较好的哈希算法,我们可以通过 npm 安装...

    5 年前
  • npm 包 zrx 使用教程

    前端开发中,我们经常会用到各种 npm 包来提高开发效率。zrx 包是一个非常实用的工具,可以帮助我们快速生成 React 代码,并且可以自定义生成的代码模板。本篇文章将详细介绍 zrx 的使用方法,...

    5 年前
  • npm 包 revolt-json-parser 使用教程

    简介 revolt-json-parser 是一个用于解析 JSON 数据的 npm 包,能够将 JSON 字符串解析成为 JavaScript 对象。它支持解析 JSON5 和 JSONC 格式的数...

    5 年前
  • npm 包 json-stream 使用教程

    在前端开发中,我们经常需要处理 JSON 数据流。而 npm 包 json-stream 可以非常方便地帮助我们实现 JSON 数据流的解析和操作。本文将为大家介绍 npm 包 json-stream...

    5 年前
  • npm 包 caql-js-compiler 使用教程

    概述 npm 包 caql-js-compiler 是一个将 CAQL(简单查询语言)转换为 JavaScript 代码的编译器。 在前端开发中,开发人员需要处理和操作大量的数据。

    5 年前

相关推荐

    暂无文章