@cennavi-fe/auth-header
v1.5.0
Published
针对无 key 服务的匿名访问的 header 加密解密方式算法
Readme
auth-header
针对无 key 服务的匿名访问的 header 加密解密方式算法。
安装
npm install @cennavi-fe/auth-header
# 或
yarn add @cennavi-fe/auth-header使用
import AesEncryptionHelper from '@cennavi-fe/auth-header';
const helper = new AesEncryptionHelper();
// 生成匿名访问 header 值
const headerValue = helper.encrypt(); // 校验不通过时返回 'error'
// 设置到请求头
fetch(url, {
headers: {
[helper.headerKey]: headerValue, // 'X-md-online-anonymous-header'
},
});API
encrypt()
生成匿名访问的 header 加密串。内部会校验当前页面 host 与 pathname 是否在允许名单内,未命中时返回 'error'。
decrypt(encryptedData, privateKey)
解密并校验匿名访问数据。privateKey 不匹配时返回 'error'。
encryptByUserID(userId)
通过 userId 生成带时间戳的加密串。
decryptByUserID(userId)
前端不做解密,恒返回 'error'。
headerKey
默认请求头字段名:X-md-online-anonymous-header。
本地调试示例
见 src/demo.js,演示 CustomCipher 的加密/解密用法。
