diff --git a/docs/uniCloud/unipay.md b/docs/uniCloud/unipay.md index 666a918d794548fd56c8deb9472a5f73e84f436d..38e7a824cec5c13d6405bcd10e93493a250dfe3b 100644 --- a/docs/uniCloud/unipay.md +++ b/docs/uniCloud/unipay.md @@ -775,3 +775,40 @@ exports.main = async function (event) { return res } ``` +闭坑说明: +同时使用uni官方的uni-id微信登录和uni-pay,uni官方更新说明cloudfunctions/common/uni-config-center/uni-id/config.json下 +"preferedAppPlatform": "app-plus"和"app-plus": {},手动改成"preferedAppPlatform": "app"和"app": {}, +微信登录可以正常使用了,但是微信支付app端云函数unipayIns.getOrderInfo()返回前端数据是微信小程序的数据,而不是app端的 + +unipayIns.getOrderInfo()微信小程序微信支付:云函数返回前端字段 +{ + "appId": "", + "nonceStr": "", + "package": "", + "timeStamp": "", + "signType": "", + "paySign": "", + "timestamp": "" +} +unipayIns.getOrderInfo()app微信支付:云函数返回前端字段 + +{ +"appid": "", +"noncestr": "", +"package": "", +"partnerid": "", +"prepayid": "", +"timestamp": "", +"sign": "" +} + +解决办法:云函数unipay.initWeixin()入参加入 clientType:'app-plus',这个字段 + +const unipayIns = unipay.initWeixin({ + appId: 'wx111111111111111', + mchId: '1222222226', + key: '222222222222222223', + clientType:'app-plus', +}) + +问题就解决了 \ No newline at end of file