00:03
哈喽,大家好,我们本节课程来讲一下微信云模板提供的小程序微信支付能力,呃,它其实是通过封装的整个微信支付的这个V3API接口,然后呢,使得开发者可以直接通过简单的函数式的调用,呃,能够轻松的去实现微信支付的整个闭环的能力,包括下单订单查询退款查询退款等等,那么因为之前云开发推出过自己服务商模式下的这个支付,但是目前因为政策相关的改变,导致服务商支付目前非常受限,所以呢,这个模板主要是通过将这些受限的相关的这个商家或者是小程序开发者通过这个模板来去在不损失这个自己的这个开发的这种经历的情况下,能够轻松的去迁移过来,那么也方便后面很多开发者再去接入小。
01:04
腾讯微信支付的时候,呃,由于配置什么证书啊,然后配置什么密钥,然后调用微信支付的各种各样的接口,然后呢,损失很多时间来浪费很多时间在里面,然后呢,不能集中精力去开发自己的业务,呃,我们这节课主要讲一下这个微信支付能力的使用过程啊,使用过程,安装和使用过程,然后我们首先转到我们的项目中来啊,然后呢,通过在目录中右键,通过云模板或AI配置的页面,然后我们点击打开,打开打开之后我们直接啊,直接新建应用,新建应用里边。点击我们小程序基础能力下面的小程序微信支付啊,这里会给我们展示一些使用指南以及相关的一些接口,我们直接安装,右键就是我们右上角安装模板安装,我们等待它安装完毕,好安装完毕之后,这一个安装的按钮会变成参数设置的按钮,我们点进去之后可以做参数的初始化,那么这里的话不给大家去做真实的演示,我们给大家去解释一下每一个参数的这个过程啊,首先微信应用的APPIID就写你小程序的应用的APPID,然后支付的商户号是在你的pweixin.qq.com的那个微信支付的后台里去填写你跟应用关联的那一个商户号,就是在你填写之前,一定要在小程序开发者后台去填写,呃,就是首先在那个微信支付的管理后台去的产品那能力管理,去填写APPID的那一个管理里去新增这个小。
02:49
程序的APIID,然后在授权成功之后,在小程序的后台可以看到相关联的商户号,那么你填写这个相关联的商户号,并且在那一个微信支付的后台的呃中心里,用户中心里去填,呃,就是安全设置里边去申请API证书,可能你需要使用这一个,呃,这个叫什么来叫本地的一个工具啊,就是一个应用的工具来生成证书,通过解出来生成证书,并且会拿到一个API私钥,然后呢,以及还有一个证书的序列号,然后呢私钥,那么以及在同样你申请证书的那一个页面里去申请的APIV3的密钥,然后把密钥传进去,这个这这五个是必填的,然后下面的话就是当微信支付成功了,然后呢,或者是退款了,那你有相关的哪些云函数,哪个能够获取这一个通知。
03:49
在获取获取通知之后,你再来做其他的逻辑,比如说成功支付之后,你去扭转一下这个发货的状态,然后在前端就能够及时的展示了,就这种形式,那么你也可以不填来自己通过直接主动查询的一个形式来轮询,来去查询相关的支付的状态,或者是退款的状态啊,当设置成功之后,我们就可以直接去用了,在接口中按照这种文档啊来去直接去使用就可以了,但是啊啊,我们在这里我们首先给大家是说一下,就是他其实提供的整个跟我们之前去看到的那些叫呃,那个小程序基础能力模板里边的那一些,呃,那那些那些接口都不一样啊,它其实是做了一个云函数,然后呢,把这个云函数封装起来,去调用了接口的模板啊,就比如说我们现在直接来操作一下啊,首先我们在这里我们创建close functions文件夹。
04:49
啊,目录好,它会自动识别,如果没有识别的话,在project computerson里,然后去设置这个root目录,然后就能识别了,识别之后我们直接同步云函数列表,它会给你同步拉取所有的我们直接选微信配functions,其他的都删掉啊,这个其实删掉没事儿啊,删掉没事儿,然后呢,选择下载啊,我们下载下载这个云函数,下载云函数之后我们就能够看到啊,首先把这个note models文件夹去掉啊,我们就能够看到这个入口文件里,它支持5种接口,然后每种接口都是使用了啊,都是调用了不同的目录里面的这一个index JS文件,然后呢,我们就能够相应的更改自己的逻辑了,因为本身来说微信支付这个逻辑是跟你自己的呃,支付的那一个逻辑强相关的嘛,所以呢,我们不可能跟你去做相关的这个业务上的一个。
05:49
干预,所以呢,你就必须自己去做,比如说微信配O的,就比如生成订单,那么生成订单这里的话,你就需要自己生成订单,比如说通过哪里,比如说通过对比商品信息啊,什么什么商品的相关的一些订单号啊,然后呢,呃,存储到数据库里啊,然后呢去调用,那么这里边的话,Co Co里边close base model的这一个是属于云接口的独有的这一个调用中心啊,函数的这种中心,然后呢,它是不能够被其他,你比如说你在这个云云开发环境里创建一个同名的云函数是不能够覆盖它的啊,它是直接在链路中转发了的,那么你通过调用它来去呃确认啊,你要使用啊微信配L的的这一个接口,那么还会有其他的,比如说什么发送订阅消息那种接口,都是改变它,而不改变上面的这一个,上面只是中心的入口,然后下面是每一个接口不同的接口。然后Data里边是属于说。
06:49
其实这里啊,内幕里你指定的这个接口,它其实你指定的其实是一个微信支付的那一个API,那么API里他告诉你要传什么信息,你就在data里去传什么信息,那么在这里我们已经给你加了什么商品描述什么的,那么你就从这个逻辑中自己往里面去添加相应的一些逻辑,然后呢,生成相应的东西就好了,然后呢,就能够直接去用了,我们刚才在参数配置里去配置的那些证书啊,然后呢,密钥呀,然后接收函数啊,都在这个model的那一个模板的接口中心里,然后呢,直接自己闭环了,维护证书什么的都不需要你操心,你只需要去啊发起命令说,诶,你要给我生成一个订单号,我告诉你什么信息,你给我生成就行了,你我也不管你什么证书不证书,密钥不密钥的,我也不用去参与这些事情,你就给我返回个订单号,我要用啊,就这个样子,然后呢,呃,发起。
07:49
你那一个叫支付的一个查询订单也是一样的啊,我发起一个查询,我给你个订单号,你给我查一下到底付没付款来,就是这个意思,那么你就可以通过轮询啊,或者是通过其他的一种情况,你前后加业务逻辑,然后再往下的话,就是什么查询订单的这一个叫,呃,根据微信支付的订单号去查询订单啊,就是微信,比如说从用户那里收到了这一个短信了,但是你不知道这个订单到底是哪里的,然后呢,你可以直接去输入用户给过来的支付的订单号来去查询,一般用在客服上啊,客服管理里,然后呢,来去定位到底是哪一个商品,然后发起什么退款呀,或者是售后的逻辑啊,然后呢,退款和退款查询其实都一样的,你前后加逻辑啊,到底支不支持退款呀,退款多少呀,然后退完了之后告诉我你去退款吧,啊,然后这个订单你大概退多少钱,然后呢,就给你退了,那么所以所有关于微信支付接口的对接都是给你封装成一个函数。
08:49
啊,一个方法啊一个方法,然后呢,直接你通过去传入必要的信息来去实现整个的啊微信支付所有的接口的一个操作,然后呢,你在这里直接专注于逻辑就好了,那么你所有东西你专注完逻辑之后,然后呢,你更新啊就更新啊上传并部署云端安装依赖啊云端安装依赖就直接更新上去,那么你正常的话,在整个的小程序端,直接像通过调用啊调用云函数的形式直接去使用就行了啊call coion啊Co coion, 然后name是微信配啊S啊就可以了,当然的话,如果说你你感觉,哎呀,我觉得你这个所有东西都合一块儿有点太麻烦了,我希望说我能不能把这些东西都拿到各个云函数里,或者是其他的地方能不能使用啊可以的,本身来说,它其实就是一个封装的这一个,呃,接口嘛,那么这个。
09:49
个接口,你放到其他的你自己的相关的函数里直接使用也是没啥问题的,只要你能把自己的整个的业务逻辑能够跑通就没有问题。呃,它是可以拆的,只不过我们在这里啊,为了方便啊,为了就是你能够一眼而见,能够知道什么情况,我们给你封了一个云函数,但实际上来说这些云函数这些这些这个模板的接口是可以放到你各种各样的云函数里直接去组合使用的啊,不一定分类放在一个云函数里,呃,为什么一定要给你搞一个东西,而不是说把这个直接给你放在文档里,是为了让你确信像这种微信支付的东西千千万万都不要放到小程序端去使用,否则你比如说你把这些东西都放在小程序端使用,会出现一个什么样的情况,就是用户支付了,然后你也发货了哈,那么用户通过改一下你前端的什么逻辑什么的,然后直接给你退款了,这就得不偿失了,所以这些东西都要隐藏在自己的后端来去做什么。
10:49
支付的校验呀,然后呢,商品的发货呀,退款呀,退款的查询都要放在后端,然后呢,后端查询完包装起来,整个的这个呃,撑起来整个的业务逻辑之后,只发挥给前端需要的就好了,然后呢,这就是整个的这个什么前后端的这种开发逻辑,不能所有的东西都放在前端,不能信任前端,就是即使目前小程序的这个呃,安全防护做的是相比于你H5做的防护要很高,但实际上来说也不要去去相信啊,在这个小程序端能够有多么好的安全性啊。所以呢,大家再去做支付相关的跟钱有关的时候,一定要自己放到后端里,自己独立去处理,这样的话对你的整个业务安全会有保障,所以呢,我们特意给你搞了一个微信配的的这个文件,呃,这个云函数就是为了让你知道所有的这一个我们提供的模板接口全部都是在云函数中使用的,而。
11:49
不是在小程序端使用的啊,那么你包装出来的什么样的,或者是一个或者两个云函数的这个接口,你直接在小程序端去使用,你包装出来的业务逻辑,比如说我用户下单了,然后支付订单,你把相关的订单或者是直接给给后端,直接发送这个订单的这个ID,然后后端拉出来这个订单的ID从数据库里拉出来,拉出来所有的商品信息,然后合一块儿给你生成一个这个支付金额的订单,然后把这个支付金额的订单怎么弄呢?比如说我们发起订单之后,然后呢,它返回一个这个payment对吧,然后呢,直接通过接口给你返回,那么你前端收到之后,通过微信的request request payment发起支付,然后把相应的东西都传进去,那么用户在前端去支付成功之后,然后呢,你接收支付成功消息的那个云函数就能够知道啊,已经成功了。
12:49
然后呢,把相关的订单号的信息写进去,那么在前端你通过刷新或者通过轮询也好,然后呢就能够知道啊已经支付成功了,然后呢直接去去改成支付成功后的那些逻辑退款其实也是一样的,用户发起退款,你要经过一系列自己的校验,然后才能发起退款,而不是说直接把这些逻辑的校验都放在小程序端啊,是这么一个意思,好,那么我们本节课程微信支付的课程就结束了,那么这里的话,由于跟自己的这一个呃这个什么这个叫呃自己的钱息息相关啊,所以呢,大家再去使用的时候,一定要仔细的去做测试啊,如果有相关的一些莫名其妙的一些错误,然后呢,自己不知道的话,大家一定要及时的反馈,通过交流群里及时的反馈联系我们,然后呢,我们帮你去做答疑,也一对一的答疑,然后呢帮助你去做这个整个的完善,相比来说。
13:49
啊,你使用小程序云模板啊,这一个这一个能力啊,微信支付的这个能力,比你自己手机微信支付的各种呃,API, 然后去维护证书要简单的很多,更能让自己专注,于是专注于专注于业务逻辑的开发,而不用去操心其他的,好,那么我们的本次课程就到此结束了。
我来说两句