|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
关于字节跳动小程序开发过程中遇到的各种坑,在这里总结一下:
第一个、签名错误的一般的问题原因是
1、 tt.pay中,orderInfo 必填字段一个都不能少
2、 app_id 是支付的app_id,不是小程序app_id
3、 sign 服务端签名的app_secret,是小程序支付中的“支付secret”,(不管你用的是微信支付还是支付宝支付)
PS:我就是这里弄成了导致签名一直不对,找了很久才找到原因
4、total_amount 代表的是订单价格,但要注意 金额,整型,单位:分(不能有小数)
5、wx_url是调用微信 H5 支付统一下单接口 返回的 mweb_url 字段值(请注意不要进行 urlencode)。如下示例:
"https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx25161122572189727ea14cfd1832451500&package=2746219290"
有prepay_id和package,不是长这样的那肯定是错误的
6、risk_info 支付风控参数值一定要放在 签名 处理方法的后门,不要放入签名里面,否则会报错
第二、灰色我在测试中遇到的几个报错,以及解决方式
1、 报错CD0025,签名错误,使用了错误的app_secret。因为我用的是H5支付,所以误用了h5的secert,后修改为小程序支付中的“支付secret”,其他签名错误的原因见上面;
2、 报错CD0015,total_amount 没有乘以100,订单价格是99.90,所以传值时应为9990
这里还有一个注意点是: 第一次支付跳转到微信后, 放弃支付; 第二次再发起支付时异常导致的错误,官方文档是说保证 trade_time 这个不变,但是测试了也不成功,最后直接修改订单号就行了,算是一个取巧。
3、 报错10001,一般是下面两个原因:
1. wx_url没有调用正确的微信H5支付统一下单接口返回的mweb_url字段值
2. 微信商户平台 H5 支付域名要加上 snssdk.com
最后一次编辑于 2020年08月24日
- <blockquote>public function Pay($user, $orderId, $orderNo, $payPrice, $payType, $orderType = OrderTypeEnum::MASTER){
复制代码
下面是小程序前端代码
|
|