当前位置: 首页 > news >正文

支付宝支付

当前我们有现成的支付宝H5端支付能力,所以需要我们采用混合开发的模式进行操作,所谓混合开发就是鸿蒙原生内嵌一个支付宝的h5页面,经过互相通信实现整个支付流程

  1. 使用Web组件通过src发起支付宝接口请求(携带订单id参数)
  2. 监听Web组件的网络请求变化,如果发现/pay/redirect 关键标识,证明支付已经完成
  3. 解析回调参数(如果payResult参数为true,即为成功)
import { promptAction } from '@kit.ArkUI'
import { webview } from '@kit.ArkWeb'@Component
struct PayOrder {@Consume navPathStack: NavPathStack@State orderId: string = ''webController: WebviewController = new webview.WebviewController()aboutToAppear(): void {const result = this.navPathStack.getParamByName('PayOrder') as string[]const id = result[0]if (id) {//   正常this.orderId = id} else {//   异常promptAction.showToast({message: '订单获取失败'})}}build() {Column() {Web({//支付页面的地址:https://meikou-api.itheima.net/pay/wap/aliPay?orderId=src: 'https://meikou-api.itheima.net/pay/wap/aliPay?orderId=' + this.orderId,controller: this.webController}).onPageBegin((event) => {//   根据页面url的变化,判断是否支付完成,支付完成:"pay/redirect"if (event.url.includes('https://meikou-api.itheima.net/pay/redirect')) {//   支付完成,返回首页(清空路由栈是为了不让用户返回之前支付的页面)this.navPathStack.clear()}})}.width('100%').height('100%')}
}@Builder
function PayOrderBuilder() {NavDestination() {PayOrder()}.hideTitleBar(true)
}
}
http://www.xdnf.cn/news/1153405.html

相关文章:

  • day11 ADC
  • 论文略读: RASA: RANK-SHARING LOW-RANK ADAPTATION
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘sqlalchemy’问题
  • Linux内核设计与实现 - 第6章 内核数据结构
  • NX二次开发常用函数坐标转化UF_MTX4_csys_to_csys和UF_MTX4_vec3_multipl
  • 轻松学习C++:基本语法解析
  • 多线程 示例
  • leetcode_121 买卖股票的最佳时期
  • AWS Partner: Accreditation (Technical)
  • 轻松上手:从零开始启动第一个 Solana 测试节点
  • 综合实验--eNSP实验
  • TypeScript 泛型详解:从基础到实战应用
  • Linux中添加重定向(Redirection)功能到minishell
  • python网络爬虫之selenium库(二)
  • 【Web APIs】JavaScript 自定义属性操作 ② ( H5 自定义属性 )
  • 图片放大镜案例
  • Patch-wise Structural:一种引入局部统计特性的时序预测损失函数
  • CS231n-2017 Lecture3线性分类器、最优化笔记
  • QT窗口(7)-QColorDiag
  • [spring6: AspectJAdvisorFactory AspectJProxyFactory]-源码解析
  • Linux C 信号操作
  • “外卖大战”正在改变国内“大零售”
  • 图解系统-小林coding笔记
  • 骑行邂逅LV巨轮,VELO维乐Angel Rise坐垫与时尚超适配
  • YOLOv11改进 | RFAConv重塑空间注意力助力性能提升
  • 开关电源和线性电源Multisim电路仿真实验汇总——硬件工程师笔记
  • 使用UV管理FastAPI项目
  • HOT100——动态规划篇Leetcode221. 最大正方形
  • 模型自信度提升:增强输出技巧
  • 纸板制造糊机操作