生码
微信后台向业务方请求二维码源数据,前端可以根据源数据生成乘车码。
1、 请求参数
参数名称 | 类型 | 必选 | 备注 |
---|---|---|---|
appid | string | Y | 小程序 |
appidmch_id | string | Y | 支付商户号 |
nonce_str | string | Y | 随机字符串 |
encrypted_data | string | Y | 使用AESCBCPKCS7PADDING |
iv | string | Y | 用于解密的IV(base64后) |
sign | string | Y | 1~5字段的签名 |
encrypted_data解密后的数据
参数名称 | 类型 | 必选 | 备注 |
---|---|---|---|
openid | string | Y | 用户 |
idcard_id | string | Y | 第三方用户id(有注册环节则有) |
user_public_key | string | Y | 用户公钥,16进制格式,共130字节 |
2、 返回参数
参数名称 | 类型 | 必选 | 备注 |
---|---|---|---|
errcode | int | Y | 0为成功 |
errmsg | string | N | 错误信息 |
nonce_str | string | Y | 原样带回 |
encrypted_data | string | Y | 使用AESCBCPKCS7PADDING |
encrypted_data解密后的数据
参数名称 | 类型 | 必选 | 备注 |
---|---|---|---|
base64_svr_data | string | Y | 交通部乘车码标准1~15字段拼接的二进制流,base64后便于网络传输 |
3、 示例代码
请求:
{"appid":"test","mch_id":"123456","nonce_str":"abcdefg","encrypted_data":"jfiwajeofjiefef","iv":"afweifwefe"}
encrypted_data解密后:
{"openid":"1234","user_public_key":"123123","card_id":"2342343"}
返回:
{"errcode":0,"nonce_str":"abcdefg","encrypted_data":"jfiwajeofjiefef","iv":"afweifwefe"}
encrypted_data解密后的数据:
{"base64_svr_data":"xxafdafd"}