# 使用pnpm
$ pnpm i node-wxcrypto
# 使用yarn
$ yarn add node-wxcrypto
- require 引入
const { WxCrypto } = require('node-wxcrypto')
const wxCrypto = new WxCrypto(token, aesKey, appID, options)
const data = await wxCrypto.decrypt(encrypt, timestamp, nonce, options)
- import 引入
import { WxCrypto } from 'node-wxcrypto'
const wxCrypto = new WxCrypto(token, aesKey, appID, options)
const data = await wxCrypto.decrypt(encrypt, timestamp, nonce, options)
在实例化和加解密方法均支持传入 options:
normalizeTags
,buildXmlOptions
,xmlOptions
,加解密方法里面传入的 options 优先级更高。
normalizeTags
支持将 xml 属性由驼峰转下划线分隔的小写形式;buildXmlOptions
透传用于生成 xml 字符串的配置;xmlOptions
透传用于解析 xml 字符串的配置。
注意:
normalizeTags
会全量覆盖xmlOptions
里面的tagNameProcessors
方法,如果想要自定义tagNameProcessors
,请不要传入normalizeTags
持将 xml 属性由驼峰转下划线分隔的小写形式:ComponentVerifyTicket => component_verify_ticket
// normalizeTags可传入布尔值或者字符串,传入字符串时使用该字符串分隔,例如:normalizeTags = "__",得到:`ComponentVerifyTicket => component__verify__ticket`
const wxCrypto = new WxCrypto(token, aesKey, appID, {
normalizeTags: true,
buildXmlOptions: {}, // 透传用于生成 xml 字符串的配置
xmlOptions: {} // 透传用于解析 xml 字符串的配置
})
const data = await wxCrypto.decrypt(encrypt, timestamp, nonce, options)
详见:API说明文档
Please open an issue here.