`uni.requestPayment` 是 uni-app 提供的一个 API,用于调用支付功能。

2,475 阅读2分钟

这个接口主要用于发起移动端支付,如微信支付、支付宝支付等。通过这个 API,开发者可以在应用中集成支付功能,使用户能夠完成在线支付。

使用说明

在使用 uni.requestPayment 进行支付之前,你需要先在后端服务器生成支付订单,然后将订单信息传递给前端。前端使用这些信息调用 uni.requestPayment 接口发起支付请求。

API 结构

uni.requestPayment({
    provider: 'wxpay', // 支付服务提供商,如 'wxpay'、'alipay'
    orderInfo: {}, // 由支付服务提供商返回的支付信息
    success: function (res) {
        console.log('支付成功', res);
    },
    fail: function (err) {
        console.log('支付失败', err);
    },
    complete: function () {
        console.log('支付流程完成');
    }
});
  • provider:支付服务提供商标识,例如 wxpay 表示微信支付,alipay 表示支付宝支付。
  • orderInfo:支付信息,这通常是由后端生成并返回给前端的。
  • success:支付成功的回调函数。
  • fail:支付失败的回调函数。
  • complete:支付流程完成的回调函数(无论成功或失败都会执行)。

示例代码

以下是一个使用 uni.requestPayment 发起微信支付的示例:

uni.requestPayment({
    provider: 'wxpay',
    orderInfo: {
        // 这里的 orderInfo 是由服务端生成的订单信息
        // 具体结构依据微信支付 API 而定
    },
    success: function (res) {
        console.log('支付成功', res);
    },
    fail: function (err) {
        console.log('支付失败', err);
    }
});

注意事项

  • 确保你已经在后端正确生成了支付订单,并获取了支付所需的所有信息。
  • 不同的支付服务提供商(如微信、支付宝)需要的订单信息结构可能不同,需要根据具体的 API 文档来进行处理。
  • 处理好支付过程中可能出现的各种情况,包括用户取消支付和支付失败等。

更多关于支付接口的具体实现和配置,你可以查阅 uni-app 官方文档 和相应支付服务提供商的开发文档。