1
最近写博客玩,用的nebular,感觉里面的auth模块和acl模块挺好用,nebular

使用场景

  • 主要用于身份认证,权限控制
  • 前端登录后端,后端返回token,前端通过该token明确用户是什么身份,具有哪些权限,使用户身份与操作ui相得益彰。

知识前置,token,jwt(json web token)

  • 虽说直接用别人的模块,还是需要了解下token的知识,现在流行的基于token的权限验证主要是jwt,看看阮一峰的介绍
  • 权限认证主要基于session,和cookie,session是把状态保存在服务器上,cookie则是在前端保存。token也是在前端保存,可以放cookie也可以放localstorage里。
  • jwt就是一个字符串,中间用'.'隔开,分成三个部分,前两个部分分别是header和payload,都是两个json经过base64url转化后的字符串,因此前端可以直接转化后读取。第三部分是签名,由服务器用密钥生成,确保该token没有经过篡改。

nebular便利之处

  • 一般我们会写登录注册component,然后写登录注册修改密码等service,同时还需要写权限校验的service或者directive,还需要路由守卫等。
  • nebular的auth模块和acl模块把这些工作都全部封装好了。只需要配置,然后在模块中import即可使用。
  • nebular提供了登录注册等组件,直接使用即可,但是我们会觉得不好看,或者功能不够,所以我们可能会重写他的组件。重写需要拷贝他的源码,然后注意保护和权限认证相关的逻辑,使这种一条龙流程不会断掉。

使用流程

参考文档


野生爬山虎
134 声望6 粉丝

野生前端玩家