面试官:说说微信小程序的支付流程?
发布时间:2025-11-05 12:45:39 作者:玩站小弟
我要评论
一、前言微信小程序为电商类小程序,提供了非常完善、优秀、安全的支付功能在小程序内可调用微信的API完成支付功能,方便、快捷场景如下图所示:用户通过分享或扫描二维码进入商户小程序,用户选择购买,完成选购
。

一、面试前言
微信小程序为电商类小程序,官说提供了非常完善、说微优秀、程序程安全的付流支付功能
在小程序内可调用微信的API完成支付功能,方便、面试快捷
场景如下图所示:


二、说微流程
以电商小程序为例
支付流程图如下所示:

具体的程序程做法:
打开某小程序,点击直接下单 wx.login获取用户临时登录凭证code,付流发送到后端服务器换取openId 在下单时,小程序需要将购买的商品Id,IT技术网商品数量,以及用户的openId传送到服务器 服务器在接收到商品Id、商品数量、openId后,生成服务期订单数据,同时经过一定的签名算法,向微信支付发送请求,获取预付单信息(prepay_id),同时将获取的数据再次进行相应规则的签名,向小程序端响应必要的信息 小程序端在获取对应的参数后,调用wx.requestPayment()发起微信支付,唤醒支付工作台,进行支付 接下来的一些列操作都是由用户来操作的免费源码下载包括了微信支付密码,指纹等验证,确认支付之后执行鉴权调起支付 鉴权调起支付:在微信后台进行鉴权,微信后台直接返回给前端支付的结果,前端收到返回数据后对支付结果进行展示 推送支付结果:微信后台在给前端返回支付的结果后,也会向后台也返回一个支付结果,后台通过这个支付结果来更新订单的状态其中后端响应数据必要的信息则是wx.requestPayment方法所需要的参数,大致如下:
wx.requestPayment({ // 时间戳 timeStamp: , // 随机字符串 nonceStr: , // 统一下单接口返回的 prepay_id 参数值 package: , // 签名类型 signType: , // 签名 paySign: , // 调用成功回调 success () {}, // 失败回调 fail () {}, // 接口调用结束回调 complete () {} })参数表如下所示:

三、结束
小程序支付和以往的网页、APP微信支付大同小异,可以说小程序的支付变得更加简洁,不需要设置支付目录、服务器租用域名授权等操作
参考文献
https://pay.weixin.qq.com/wiki/doc/apiv3/open/pay/chapter2_8_0.shtml
https://juejin.cn/post/6844903895970349064
相关文章
深入了解苹果手机ID的设置方法(掌握关于苹果手机ID的一切)
摘要:随着科技的不断发展,苹果手机已成为人们生活中不可或缺的一部分。而苹果手机的ID设置更是其重要功能之一,它不仅保护了用户的隐私安全,还能提供更多便利。本文将详细介绍苹果手机ID的设置...2025-11-05
前言工欲善其事,必先利其器。了解完性能指标之后,性能优化的目标已经明确了。接下来我们借助一些性能测量工具,明确网页距离优化目标之前还有多大的差距。一个好的工具可以让你事半功倍,接下来我将用3篇文章分别2025-11-05
鸿蒙轻内核M核源码分析系列六 任务及任务调度(3)任务调度模块
想了解更多内容,请访问:和华为官方合作共建的鸿蒙技术社区https://harmonyos.51cto.com调度,Schedule也称为Dispatch,是操作系统的一个重要模块,它负责选择系统要处2025-11-05
在2021年,我并不推荐你使用webpack,因为随着历史的发展,它正变得越来越臃肿,每次编译的时间从几秒到几分钟,这不是一般人能够忍受的。那么有没有开发速度非常快的构建工具呢?答案是肯定的。随着vu2025-11-05- 1,mp3播放安装gstreamer在终端输入 sudo apt-get install gstreamer0.10-fluendo-mp3安装之后mplayer正常播放mp3系统的Rhythmbox2025-11-05
本文转载自微信公众号「全栈修仙之路」,作者阿宝哥。转载本文请联系全栈修仙之路公众号。在日常工作中,文件上传是一个很常见的功能。在上传文件时,我们可以选择上传单个文件,也可以通过设置 multiple2025-11-05


最新评论