blear.node.weixin

1Introduction

2Example

var weixin = require('blear.node.weixin');

3Static

3.1.config(configs)

配置。

默认配置 = {
    debug: false,
    appId: '',
    appSecret: '',
    // 指定 js-api-ticket 方法
    getJsApiTicket: function (callback) {
        callback(new Error('未配置获取 js-api-ticket 方法'), {ticket: 'xxxx'});
    }
}

3.1.1configs

  • 类型:Object
  • 说明:覆盖默认配置

3.2.jsApiSignature(url, callback(err, ret)): undefined

URL 微信 js Api 签名。官方文档:mp.weixin.qq.com

3.2.1url

  • 类型:String
  • 说明:url,如 https://a.b/c/d/e?f=g

3.2.2callback

  • 类型:Function
  • 说明:签名回调

3.2.3callback: err

  • 类型:Error | Null
  • 说明:签名错误

3.2.4callback: ret

  • 类型:Object
  • 说明:签名结果

3.2.5callback: ret.nonceStr

  • 类型:String
  • 说明:随机字符串

3.2.6callback: ret.timestamp

  • 类型:String
  • 说明:时间戳

3.2.7callback: ret.url

  • 类型:String
  • 说明:原始 URL,但会被去除 hash

3.2.8callback: ret.jsApiTicket

  • 类型:String
  • 说明:JS API 令牌

3.2.9callback: ret.signature

  • 类型:String
  • 说明:签名结果

3.2.10callback: ret.state

  • 类型:String
  • 说明:签名验证状态值

3.2.11callback: ret.expiresIn

  • 类型:Number
  • 说明:签名有效期(单位:毫秒)

3.3.getAuthorizationAccessToken(code, callback(err, ret)): undefined

根据 code 获取 authorization accessToken。 官方文档:mp.weixin.qq.com

3.3.1code

  • 类型:String
  • 说明:微信授权登录回调回来的 code 字段

3.3.2callback

  • 类型:Function
  • 说明:回调

3.3.3callback: err

  • 类型:Error | Null
  • 说明:回调错误

3.3.4callback: ret

  • 类型:Object
  • 说明:回调结果

3.3.5callback: ret.accessToken

  • 类型:String
  • 说明:访问令牌

3.3.6callback: ret.expiresIn

  • 类型:Number
  • 说明:有效期(单位:毫秒)

3.3.7callback: ret.openId

  • 类型:String
  • 说明:用户唯一标识

3.3.8callback: ret.scope

  • 类型:String
  • 说明:用户授权作用域

3.4.getUserInfo(openId, accessToken, callback(err, ret)): undefined

获取用户信息。 官方文档:mp.weixin.qq.com

3.4.1openId

  • 类型:String
  • 说明:用户唯一标识

3.4.2accessToken

  • 类型:String
  • 说明:访问令牌

3.4.3callback

  • 类型:Function
  • 说明:回调

3.4.4callback: err

  • 类型:Error
  • 说明:回调错误

3.4.5callback: ret

  • 类型:Object
  • 说明:回调结果

3.4.6callback: ret.openId

  • 类型:String
  • 说明:用户唯一标识

3.4.7callback: ret.unionId

  • 类型:String
  • 说明:用户唯一标识2(只有该公众号绑定在开放平台之后才会有)

3.4.8callback: ret.nickname

  • 类型:String
  • 说明:用户昵称(注意可能有表情符号)

3.4.9callback: ret.sex

  • 类型:String
  • 说明:用户性别
    • 1:男
    • 2:女
    • 0:未知

3.4.10callback: ret.country

  • 类型:String
  • 说明:用户所在的国家

3.4.11callback: ret.province

  • 类型:String
  • 说明:用户所在的省份

3.4.12callback: ret.city

  • 类型:String
  • 说明:用户所在的城市

3.4.13callback: ret.avatar

  • 类型:String
  • 说明:用户头像

3.5.getMedia(mediaId, accessToken, callback(err, body, res)): undefined

获取一个(临时的)媒体文件。

3.5.1mediaId

  • 类型:String
  • 说明:媒体文件 ID

3.5.2accessToken

  • 类型:String
  • 说明:访问令牌

3.5.3callback

  • 类型:Function
  • 说明:回调

3.5.4callback: err

  • 类型:Error
  • 说明:回调错误

3.5.5callback: body

  • 类型:Object
  • 说明:媒体文件内容

3.5.6callback: res

  • 类型:Object
  • 说明:响应对象(Response)

3.6.request(options, callback(err, ret)): undefined

发起一个微信格式请求。 入参出参请参考 blear.node.request

3.7.parseResponseBody(body, callback(err, ret)): undefined

解析微信响应的结果。

3.7.1body

  • 类型:String
  • 说明:微信响应内容

3.7.2callback

  • 类型:Function
  • 说明:微信响应回调

3.7.3callback: err

  • 类型:Error
  • 说明:微信响应回调错误

3.7.4callback: ret

  • 类型:*
  • 说明:微信响应回调结果

4Dependencies

5Reference