@blazes/crypto v2.0.0-miniprogram16
背景
通过签名防止用户使用脚本伪造请求,具体签名过程可见 标准签名流程 通过加密防止错误证书信任造成敏感数据泄漏,具体加密过程可见 数据传输与存储安全规范 尽管前端有泄漏密钥和加密方法的可能性,但通过代码的混淆等能防御大部分用户。
安装
npm
npm install @blazes/cryptoyarn
yarn add @blazes/cryptoAPI
方法
| 名称 | 说明 | 入参 | 回参 |
|---|---|---|---|
| setSecret | 设置全局的签名和加密密钥 | { encrypto?: string; sign?: string;} | void |
| encrypt | 加密 | text, secret | string |
| decrypt | 解密 | text, sceret | string |
| sign | 签名 | ISignOption | string |
方法中的 sceret 参数可覆盖全局的密钥
ISignOption
| 属性 | 说明 | 类型 | |
|---|---|---|---|
| verb | 请求方法 | string | |
| path | 后端 API 路径,以/开头,不包含? | string | |
| host | 主机名,不包含协议名 | string | |
| header | x-yh-开头的请求头 | string | |
| body | 请求参数,如果是文件,可传入formData | string | FormData | |
| query | url里?后面的参数 | string |
axios 集成
提供了 axios 拦截器,注册后,可自动添加YH {Authoriztion}。
instantce.interceptors.request.use((config) => {
return intercepeReq(host, config);
});注意以下几点
- 由于后端的
host和前端域名不一致,需要手动传入。 - 目前
path从config中读取,未拼接baseUrl
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago