生码

微信后台向业务方请求二维码源数据,前端可以根据源数据生成乘车码。

1、 请求参数

参数名称类型必选备注
appidstringY小程序
appidmch_idstringY支付商户号
nonce_strstringY随机字符串
encrypted_datastringY使用AESCBCPKCS7PADDING
ivstringY用于解密的IV(base64后)
signstringY1~5字段的签名

encrypted_data解密后的数据

参数名称类型必选备注
openidstringY用户
idcard_idstringY第三方用户id(有注册环节则有)
user_public_keystringY用户公钥,16进制格式,共130字节

2、 返回参数

参数名称类型必选备注
errcodeintY0为成功
errmsgstringN错误信息
nonce_strstringY原样带回
encrypted_datastringY使用AESCBCPKCS7PADDING

encrypted_data解密后的数据

参数名称类型必选备注
base64_svr_datastringY交通部乘车码标准1~15字段拼接的二进制流,base64后便于网络传输

3、 示例代码

请求:

  1. {"appid":"test","mch_id":"123456","nonce_str":"abcdefg","encrypted_data":"jfiwajeofjiefef","iv":"afweifwefe"}

encrypted_data解密后:

  1. {"openid":"1234","user_public_key":"123123","card_id":"2342343"}

返回:

  1. {"errcode":0,"nonce_str":"abcdefg","encrypted_data":"jfiwajeofjiefef","iv":"afweifwefe"}

encrypted_data解密后的数据:

  1. {"base64_svr_data":"xxafdafd"}