1、首次发起请求时携带请求头,其中X-WX-Code是调用wx.login接口时获取的code值,X-WX-RawData和X-WX-Signature分别是调用wx.getUserInfo接口时获取的rawData和signature。
header: {
'X-WX-Code': 'code',
'X-WX-RawData': 'rawData',
'X-WX-Signature': 'signature',
}2、后续请求只需携带首次请求时保存的code作为请求。
header: {
'X-WX-Code': 'code',
}3、异常处理
异常错误均以json格式返回数据,数据格式如下:
{
'F2C224D4-2BCE-4C64-AF9F-A6D872000D1A': 1,
'reason'?: 'xxx',
'error': {
'name': 'xxx',
'message': 'xxx',
'detail'?: 'xxx',
},
}
其中F2C224D4-2BCE-4C64-AF9F-A6D872000D1A是约定的唯一标识 ID,reason标记异常的原因,error包含错误的详细信息。
目前定义的reason有:
ERR_SESSION_EXPIRED: 在session中未找到code对应的wxUserInfo,这里需要生成新的code和signature更新session(非首次请求触发有可能触发该异常)ERR_SESSION_KEY_EXCHANGE_FAILED:code换取session_key失败(首次请求有可能触发该异常)ERR_UNTRUSTED_RAW_DATA: 不可信的rawData,有可能是伪造的rawData或signature(首次请求有可能触发该异常)