columbus-base-x
提供安全的base64的快速编解码方案
# use yarn yarn add columbus-base-x # use npm npm i columbus-base-x -S
API
encode
encode(url, params, include)
入参
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
url | string | - | url地址 |
params | object | - | url需要携带的参数(会与原url携带的参数比较并增量更新) |
include | string[] | ['connect'] | params对象中需要编码的key |
若
params.key
的值为对象类型, 务必将使include
包含key
返回值
返回编码后的url
string
example
; const t1 = ;// https://example.com?connect=eyJpZCI6IjEyMyIsIm5hbWUiOiJ0ZXN0IiwiaG9va3MiOnsiaG9va3MxIjoiaG9va3MxIn19&from=wechat&to=cXFfYnJvd3Nlcg const t2 = ;// https://example.com?from=qq
encodeStringify
encodeStringify(params)
入参
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
params | object | - | 需要编码的对象 |
返回值
返回编码后的字符串
string
example
; const t = ;// eyJjb25uZWN0Ijp7ImlkIjoiMTIzIiwibmFtZSI6InRlc3QiLCJob29rcyI6eyJob29rczEiOiJob29rczEifX0sImZyb20iOiJ3ZWNoYXQiLCJ0byI6InFxX2Jyb3dzZXIifQ
decode
decode(url, include)
入参
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
url | string | - | url地址 |
include | string[] | ['connect'] | 若存在在include,则解码,否则返回原值 |
返回值
url中携带的参数
object
example
; const t1 = ; const t2 = ;// { connect: { id: '123', name: 'test', hooks: { hooks1: 'hooks1' } }, from: 'wechat', to: 'cXFfYnJvd3Nlcg' } const t3 = ;// { connect: { id: '123', name: 'test', hooks: { hooks1: 'hooks1' } }, from: 'wechat', to: 'qq_browser' }
decodeParse
decodeParse(str)
入参
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
str | string | - | 字符串 |
返回值
object | string
example
; const t1 = ; const t2 = ;// { connect: { id: '123', name: 'test', hooks: { hooks1: 'hooks1' } }, from: 'wechat', to: 'qq_browser' }
decodeWithReturnPathUrl
decodeWithReturnPathUrl(url, include)
入参
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
url | string | - | url地址 |
include | string[] | ['connect'] | 若存在在include,则解码,否则返回原值 |
返回值
属性 | 类型 | 说明 |
---|---|---|
pathUrl | string | 不含query的url地址 |
params | object | url中携带的参数 |
example
; const t1 = ; const t2 = ;// {pathUrl: 'https://example.com', params: { connect: { id: '123', name: 'test', hooks: { hooks1: 'hooks1' } }, from: 'wechat', to: 'qq_browser' }}