HarmonyOS鸿蒙Next中【HMS Core】应用内支付FAQ 6-unknownException、订单编号传入
HarmonyOS鸿蒙Next中【HMS Core】应用内支付FAQ 6-unknownException、订单编号传入 【关键字】
- 应用内支付
- 报错
【问题描述1】
收到华为的支付回调通知后,通过通知里面的purchaseToken,调用Order服务验证购买Token时报错。
【解决方案】
-
报错“6-unknownException”有可能是因为请求头里带的认证token有问题,请检查Authorization字段。
-
如步骤一无法解决,可检查下“APPAT”参数是否真确。
具体可以参考示例代码:
【问题描述2】
华为的支付回调通知,是否可以把用户自己的订单编号传过来?
【解决方案】
-
首先需要确定商品是消耗型商品还是订阅性商品,因为只有订阅商品有orderid,而订单没有orderid。
-
如果用户购买的商品是消耗型商品
可以根据支付后拿到的最新的purchaseToken,表示该商品和该用户的对应关系。可以通过{rootUrl}/applications/purchases/tokens/verify 接口对拿到的最新的purchaseToken进行解析,具体可以参考文档:
-
如果用户购买的商品是订阅型商品
根据官方文档,订单ID是唯一标识一笔需要收费的收据,由华为应用内支付服务器在创建订单以及订阅型商品续费时生成。
每一笔新的收据都会使用不同的orderId。当通知类型为NEW_RENEWAL_PREF时不存在。
更多关于HarmonyOS鸿蒙Next中【HMS Core】应用内支付FAQ 6-unknownException、订单编号传入的实战教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于HarmonyOS鸿蒙Next中【HMS Core】应用内支付FAQ 6-unknownException、订单编号传入的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,使用HMS Core进行应用内支付时,如果遇到unknownException
错误,通常是由于订单编号(Order ID)未正确传入或格式错误导致的。请确保在调用支付接口时,订单编号符合以下要求:
- 订单编号必须唯一,不能重复使用。
- 订单编号长度应在6到64个字符之间,仅支持字母、数字和下划线。
- 订单编号不能为空或包含特殊字符。
如果问题仍然存在,建议检查网络连接、HMS Core版本以及支付接口的调用参数是否正确。