2.0.0-miniprogram12 • Published 2 months ago

@blazes/crypto v2.0.0-miniprogram12

Weekly downloads
-
License
ISC
Repository
-
Last release
2 months ago

背景

通过签名防止用户使用脚本伪造请求,具体签名过程可见 标准签名流程 通过加密防止错误证书信任造成敏感数据泄漏,具体加密过程可见 数据传输与存储安全规范 尽管前端有泄漏密钥和加密方法的可能性,但通过代码的混淆等能防御大部分用户。

安装

npm

npm install @blazes/crypto

yarn

yarn add @blazes/crypto

API

方法

名称说明入参回参
setSecret设置全局的签名和加密密钥{ encrypto?: string; sign?: string;}void
encrypt加密text, secretstring
decrypt解密text, sceretstring
sign签名ISignOptionstring

方法中的 sceret 参数可覆盖全局的密钥

ISignOption

属性说明类型
verb请求方法string
path后端 API 路径,以/开头,不包含?string
host主机名,不包含协议名string
headerx-yh-开头的请求头string
body请求参数,如果是文件,可传入formDatastring | FormData
queryurl?后面的参数string

axios 集成

提供了 axios 拦截器,注册后,可自动添加YH {Authoriztion}

instantce.interceptors.request.use((config) => {
    return intercepeReq(host, config);
});

注意以下几点

  • 由于后端的 host 和前端域名不一致,需要手动传入。
  • 目前 pathconfig 中读取,未拼接 baseUrl