如何处理微信小程序支付问题

作者:小飞燕 发布时间:2021-04-13 11:14:47

导语本文整理了全网深受用户关注的个如何处理微信小程序支付问题经验知识,可以帮助您全面了解代理怎么做,小白也能成为高手,跟随小编一起来看一看吧!

说到微信小程序的支付功能,很多人都想试试,大家都觉得这个小程序功能可以让生活轻松很多。但是,微信小程序的支付方式还是要了解一下。

前提是:

1.小程序注册后,已经配置了各种服务器环境和https。

2、你是前后合作,后台主要是给我们提供相应的数据,因为有些界面要求后台做起来比我们容易。其实我觉得小程序才1m,给后台的东西更多

主题:

一、参考:

1、http://www.cnblogs.com/jcscript/p/6126722.html

2、http://www.weixinapphome.com/topic/28

注:第一篇是领导在雪中转入小程序联盟的文章,第二篇是基于第一篇的文字。两者都是前端支付发起和调用

我的是将支付发起和支付处理前后分开。请继续。

在上图中,我标出了需要我们注意的三点:

1.属性包的参数值为package:“prevable _ id=wx 211262323463265451”

第二:2。这个签名需要我们注意。签名方法是将所有参数拼接成url格式,然后进行md5编码

第三:3。这是付款文件,请仔细看

让我们一个一个地解决上面的问题:我们需要看第三步打开支付流程的文档:https://pay.weixin.qq.com/wiki/d.api。php?章节=9_1

其实我们可以看到,所有的流程都在这里!那么我们就按照这个过程一步一步来。

1.在小程序中调用小程序接口来获取用户的openid。参见公共api [applet登录api]

上面已经说了,你要前后结合,所以开发小程序就要迈出第一步。文件在:https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-login.html # wxloginobject。

使用

[size=1.5em]wx.login(object)获取代码,该代码用于交换openid。我是在后台做的,所以我只是用我在请求中得到的代码来得到它。

[javascript]纯文本视图复制小程序代码

函数getopenid(代码,cb) {

requestget('useropenid ',{ code: code },function (res) {

if(cb==' function '){

cb(res);

}

})

}

res返回的结果就是我们的openid,这里已经完成了第一步。

2.商家服务器调用统一支付指令。参见公共应用编程接口[统一命令应用编程接口:https://pay.weixin.qq.com/wiki/d.api。php?【章节=9_1】

让我们来看看这个:

这里面有很多东西。如果你自己完成前后端,会很好看。磨刀不误砍柴工。如果你没有看到,你可能解决不了这个过程。毕竟微信文档,有点乱。

如果像我这样是在后端做的,你不用担心,但想知道也不难。看看上面开头我给的两个地址。这两篇都是在前端做的(小程序)。这里,其实没必要。我看数据的时候发现微信其实提供的是java,net,php的包。也就是说后台只需要这个东西,并填写修改相应的参数。

但是比较后会是什么样子,如果可以的话我会编这个代码。我没有后台的代码。理解!

这和我们一样,只要请求使用post请求得到结果,我们这次需要的结果就是支付perpay_id

我的请求只返回了一个perpay_id,但是我们可以看看统一订单接口返回的数据

他不仅给了我们perpay_id,还给了我们随机字符串和签名。我说这一点是因为我没有用这个,所以我们是应该直接用这些随机字符串和签名,还是直接用这两个(我没有验证后台没有返回给我,具体是要验证什么)。跳过这一点,我们只需要这个perpay_id就能成功。

现在让我们来看看

我们已经完成了第一步和第一步,只剩下第二步,paysign。微信对应的流程是:

3.商家服务器要求重新签名。参见公共api获取api[重新签名:https://pay.weixin.qq.com/wiki/d.api。php?【章节=7_7】

我们来看看这个签名,有点让人心疼。我们来看一下上面提到的两篇文章的步进式总结:

第一篇文章:

第二条:

一般来说,这个签名坑比较多。

我来结合描述一下:

首先,我们来看看第三步的地址(绿色)

看看微信小程序api中wx.requestpayment(对象)接口的文档

我特意标注的红盒子部分可能会让你突然意识到,有些“坑”可能是我们看待事物的错误方式。appid上有明确的说明和要带的关键文件。

由此我们还可以看出,打开支付流程的正确方法如下

按照上图和连接页面中的步骤进行查看和操作。

好了,跑题了:我们来看看签名

[javascript]以纯文本方式查看复制的代码

//调用付款签名

函数mixedencrym5(res _ paydata,randomstring,timestamp) {

return ' appid=' config . appid ' non estr=' random string ' package=previder _ id=' res _ paydata ' sign type=md5 ' ' timestamp=' timestamp ' key=' config . key;

}

这是正确的顺序。在具体签名方式的描述中,可以看到,密钥是在签名参数按照ascii大小排序后拼接的。

上述参数函数

[javascript]以纯文本方式查看复制的代码

//时间戳

函数时间戳{

返回par sent(new date . gettime/1000)' '

}

/*随机数*/

函数randomstring {

var chars=' abcdefghjkmnpqrstwxyzabdefhijkmnprstwxyz 2345678 ';/* * * * *混乱的字符ooll,9gq,vv,uu,i1****/

var maxpos=chars.length

var pwd=

for(var i=0;i 32i ) {

pwd=chars . charat(math . floor(math . random * max pos));

}

返回pwd

}

比较后,这个拼接的字符串用md5加密。只需在网上搜索用md5加密的js即可。如果怕不做,可以网上验证。

此时,我们是否有时间戳、非现金随机数、套餐支付id和paysign签名?没错,就这样结束了

上图是打电话付款的比较后一步。注意一点时间戳和随机字符串,以确保它只生成一次,因为在

我们想在wx.requestpayment(对象)中使用它,也想在拼接字符串中使用它。这两个应该保证微信去md5加密的时候得到和你自己md5加密一样的结果。

以上是关于微信小程序支付的全部信息。虽然小程序的支付起了很大的作用,但是我们在开发和使用它的时候还是需要考虑上面提到的一些细节。更多信息,请关注源社网的小节目频道。

下面是标题开头微信小程序的后端构造,下面是标题结尾

微信小程序这种划时代的产品发布已经有一段时间了,很多人对搭建微信小程序后端很感兴趣。但是微信小程序的后端建设是怎么做的呢?让小编给大家梳理一下这个内容。

使用express框架搭建小程序后端服务器,为小程序提供restful api服务开发环境所需的软件包版本:

node.js的版本是.2.0

npm版本3.10.9

mongodb 3 . 0 . 6版

安装并启动mongodb数据库

mongodb数据库安装步骤,例如,安装mongodb版,您可以查看文档,请根据您自己的操作系统选择适合您的mongodb安装文档。

创建应用程序目录

创建一个新的目录文件weapp-server,并输入目录:

mkdir weapp-server cd weapp-server

接下来,生成项目所需的package.json文件,如下所示:

npm init -y

安装快速和猫鼬套装

npm安装-保存快速猫鼬

基于节点的快速网络应用框架

mongoose是一个中间件,支持express和mongodb之间的通信

添加应用程序条目文件

创建一个新的文件index.js,然后添加以下代码:

let express=require(' express ');let app=express让mongose=require(' mongose ');

mongose . connect(' mongodb ://localhost :27017/weapp-server ');

app.listen(3000,function { console.log('您的服务器运行在port3000上');

});

上面的代码创建了一个比较简单的express应用程序,首先创建一个express实例app,然后调用mongoose中间件连接mongodb数据库,比较后创建一个http服务器实例监听来自本地3000端口的所有请求。

启用应用程序

首先,要启动mongodb,您需要执行:

mkdir -p数据/dbmongod - dbpath=。/data/db

然后,安装nodemon并执行以下命令:

npm安装-g nodemon

然后,启用刚刚创建的快速应用程序并执行以下命令:

nodemon index.js

您的服务器运行在端口3000上将打印在命令行上。

说明快递应用一直在运行。

使用nodemon启动应用程序的目的是为了提高开发效率

每次代码修改后,nodemon都会自动重启应用程序

这样即使我们的微信小程序后端服务器搭建好了,也会完善用户登录api,存储小程序登录用户的信息

查看全文

猜你喜欢

微商怎么找货源

频道查询入口

微商代理怎么做