UNPKG

@lanaqi/rsr

Version:
74 lines (56 loc) 1.81 kB
# React Security Router React 安全路由器 # 如何安装 ```bash npm add @lanaqi/rsr -S ``` # 框架说明 rsrreact security router 的简写,一个基于 react router 实现纯前端路由级别控制的安全框架。 功能简介: - 认证与授权 - 权限检测 - 二次签证(签名:如要求再次输入密码等) - 等等 注意: 该框架没有编写相关文档,需要自行看源码(注释)和例子。 # 版本兼容 注意:目前 0.0.3 + 版本只支持 react 19 + ,另外只兼容 react router v7 (react-router) 版本 (并非:react-router-dom),其它的版本,暂时不考虑兼容。 # 简单例子 ```tsx export default withSecurityBlocker(Root, (bundler) => { return ( bundler .context((builder) => { return ( builder // 可选层级权限 // .hierarchy('superadmin>admin;admin>users;users>guest') .resource((rb) => rb .patterns("/login", "/logout", "/denied", "/signature") .anonymous() .build(), ) .resource((rb) => rb.patterns("/sheet").permissions("admin").signatured().build(), ) .resource((rb) => rb.patterns("/*").authenticated().build()) .build() ); }) .manager((builder) => { return builder .behave({ notAuthenticationPath: "/login", notSignaturePath: "/signature", accessDeniedPath: "/denied", }) .build(); }) // .addons() .build() ); }); ``` # 其它例子 基于 Modern.js 的例子:https://github.com/lanaqi-opensource/rsr-demo 基于 react-router 的例子:https://github.com/lanaqi-opensource/rsr6-demo