0.1.9 • Published 1 year ago

js-signature v0.1.9

Weekly downloads
2
License
MIT
Repository
github
Last release
1 year ago

Node JSSignature

说明

本 js 库为 laravel-signature 的客户端 js 版本。

安装

$ npm install js-signature

使用

# 1、设置 key,secret,[uri, method, params, ...]  参数;
# 2、通过 sign() 方法签名;
# 3、通过 getHeaders() 获取头部需要携带的参数,通过 http 请求头传递。
<script>
import JSSignature from 'js-signature'

JSSignature.init({
    key: 'accessKeyId',
    secret: 'accessKeySecret'
})
// uri,method, params, 也可直接通过 init 设置
const headers = JSSignature.setUri('/index').setMethod('GET')
        .setParams({ perPage: 20, page: 1, a: { aa: '1', bb: '2' }}).sign().getHeaders()
console.log(headers)
/**
* 因传递的时间为浏览器端的时间,可能错误;可提示时间错误或通过不签名接口获取服务器时间再使用设置时间戳方法
const headers = JSSignature.setUri('/index').setMethod('GET').setTimesamp(1600246526)
        .setParams({ perPage: 20, page: 1, a: { aa: '1', bb: '2' }}).sign().getHeaders()
*/
// {Access-Key-Id: "accessKeyId", Timestamp: "1600246526", Signature: "Signature B7vSXHICVTYYuGC5w3vBVdCwgjQ=", Version: ""}
</script>

init参数

参数类型默认说明
keystring''必须,accessKeyId
secretstring''必须,accessKeySecret
methodstringGETGET, POST, PUT, DELETE, ...
uristring'/'请求URI,域名后/开始
paramsobject{}参数,
versionstring''接口版本
algostringsha1加密方式md5, sha1, sha256, ...
prefixstring''签名字符串前面拼接的字符
connectorstring&签名字符串之间拼接的字符
suffixstring''签名字符串最后拼接的字符
headerAccessKeystringAccess-Key-Id请求头参数名,headers'Access-Key-Id'
headerTimestampstringTimestamp请求头参数名,headers'Timestamp
headerSignaturestringSignature请求头参数名,headers'Signature'
headerSignatureTagstringSignature签名标识 headers'Signature' = Signature sign
headerVersionstringVersion请求头参数名,headers'Version'

方法(主要使用init, sign, getHeaders)

方法可通过init()方法设置说明
init(object)-设置参数值
setMethod(string)设置 method
setUri(string)设置 uri
setParams(object)设置 params
sign()-签名
getHeaders()-获取头部数据
setTimesamp(number)-设置时间戳
setKey(string)设置 accessKeyId
setSecret(string)设置 accessKeySecret
setVersion(string)设置 version
setAlgo(string)设置 algo
setPrefix(string)设置 prefix
setConnector(string)设置 connector
setSuffix(string)设置 suffix
setHeaderAccessKey(string)设置 headerAccessKey
setHeaderTimestamp(string)设置 headerTimestamp
setHeaderSignature(string)设置 headerSignature
setHeaderSignatureTag(string)设置 headerSignatureTag
setHeaderVersion(string)设置 headerVersion

注意

# 注意:
# 1、因传递的时间为浏览器端的时间,可能错误;可提示时间错误或通过不签名接口获取服务器时间再使用设置时间戳方法
0.1.9

1 year ago

0.1.8

2 years ago

0.1.7

3 years ago

0.1.6

4 years ago

0.1.5

4 years ago

0.1.4

4 years ago

0.1.3

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago

0.1.0

4 years ago