支付宝支付–aliPay(客户端配置)
最后更新于:2022-04-01 23:48:07
[TOC]
## **首先配置config.xml**
## **注意:面改版,有些地方会有不同,其实大同小异,有不懂的请看服务端文档的截图**
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/23ff65bbd9b30551532d9694ef4488b2_781x439.png)
~~~
~~~
**注:** ****表示应用的编号,用‘AliPay’和 widgetId 拼接
* * * * *
## **配置res/key.xml**
> 可以写在微信的key.xml文件中
在res文件下面创建一个key.xml文件(在这配置,后面代码中可以不配置,**可选**)
~~~
~~~
## **关于私钥公钥**
**登录https://b.alipay.com**
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/25ca53cf1735c73a8fdb490c3d49bef1_696x481.png)
**输入支付宝密码进入即可查看设置RSA秘钥**
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/f2cf8eed309067f0f017b3c8e244b200_1020x515.png)
# **生成公钥私钥的方法**(最坑的地方)
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/f6be0054a0cc56a376d8ec7d8aaba72e_1392x770.png)
本文介绍第一种方法
下载相应的生存工具
解压之后
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/0f5e0fce991cfd5a1e53891b103f8da1_720x292.png)
**注:此处不用--支付宝RAS密钥生成器SHAwithRSA1024_V1.0.bat**
进入--文件夹RSA
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/35a255aebfa07223d09904204d847a72_598x225.png)
进入--文件夹openssl
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/967217fdef6312e9214fd97fde23aa53_644x280.png)
进入后按照顺序点击(我的文件是已经生成过得和第一次进入的文件不一样)
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/15a81f0188f4748a8c2ae3d07ad320a3_808x470.png)
生成红框中的文件
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/1924a7ea0f34d385068b26e62bb9d4f2_400x141.png)
上传此时生成的公钥---私钥在写代码的时候用
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/af800e8088ca065cb0562a17ef754d18_427x260.png)
**注:**私钥中将顶部和底部注释去掉 其余代码全部都要 不可丢到==号
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/8a17013ff961e2bc47ee26f189323a18_857x436.png)
## 配置支付宝支付方法代码
第二种方法
> 当aliPay.config返回值成功之后再进行第二步
此处的aliPay.config配置 partner 和 seller 都是商户ID
**注**订单号用32位纯数字
第一步
~~~
var aliPay = api.require('aliPay');
aliPay.config({
partner: '12345678901234',
seller: '123456789024354',
rsaPriKey: 'testKEY',
rsaPubKey: 'testKEY',
notifyURL: 'http://www.apicloud.com'
}, function(ret, err) {
api.alert({
title: '支付结果',
msg: ret.msg,
buttons: ['确定']
});
});
~~~
第二步
~~~
var aliPay = api.require('aliPay');
var notifyURL = 'http://www.apicloud.com';
aliPay.pay({
subject: '订单名',
body: '订单描述',
amount: '0.01',
tradeNO: '4563548735674'
}, function(ret, err) {
api.alert({
title: '支付结果',
msg: ret.code,
buttons: ['确定']
});
});
~~~
具体的返回值参考官方文档
温馨提示:如果进入支付宝界面报错(ALI64)返回6001
在确保参数正确的情况下,重新生成公钥,如果还有报错,请删除浏览器缓存再试
';