帖子
帖子
用户
博客
课程
12下一页
返回列表 发新帖
显示全部楼层
28
帖子
0
勋章
130
Y币

[App引擎] 支付宝配置,及支付后的处理疑问(已测试支付成功)

[复制链接]
发表于 2015-8-28 14:56:33
1.
在key.xml中进行了以下配置
<security>
  <item name="aliPay_partner" value="208******29791"/>
  <item name="aliPay_seller" value="229*********.**"/>
  <item name="aliPay_rsaPriKey" value="MIICXAIBAAK*****************************88E5Mj9iCF7NdR+Mk="/>
  <item name="aliPay_rsaPubKey" value="MIGfMA0GCSqGSIb3DQEBAQUAA4***********************888AB"/>
  <item name="aliPay_notifyURL" value="http://www.apicloud.com"/>

</security>

2.在界面中有以下代码
//加载时配置支付宝信息
apiready = function(){
                var iaf = api.require('aliPay');
           iaf.config({
                partner: '2088***********',//商户ID
                seller: '229**********782**.**',//商户账户ID
                rsaPriKey: 'M***************************CF7NdR+Mk=',//商户私钥
                rsaPubKey: 'MIGfMA******************F3cVQIDAQAB',//支付宝公钥
                notifyURL: 'http://www.apicloud.com'
            }, function(ret, err) {
                api.alert({
                    title: '配置结果',
                    msg: ret.status == 1 ? '配置成功':'配置失败',
                    buttons: ['确定']
                });
            });
        };




2.执行支付操作:
var iaf = api.require('aliPay');
            var subject = '支付宝测试订单';//订单名,交易商品名
                var body = '产品测试';//订单描述,交易商品的简介
                var amount = '0.01';//订单价格,交易商品的价钱
                var tradeNO = '810';//订单编号
                iaf.pay({
                    subject:subject,
                    body:body,
                    amount:amount,
                    tradeNO:tradeNO
                },function(ret,err) {
                        var code = ret.code;
                        if(code == "9000"){
                            api.alert({
                                title: '支付结果',
                                msg: "支付成功"
                            });
                        }else{
                                api.alert({
                                title: '支付结果',
                                msg: ret.msg,
                            });
                        }
                });


以上代码已测试支付成功
提问:
1.已经在key.xml中进行了配置,那么是否就不需要再页面加载时重新配置了?如果需要重新配置,是像我上面写的那样还是说通过api.loadSecureValue提取值就行了?
2.支付成功后,是在  if(code == "9000")   里写处理订单的后续代码,还是在notifyURL配置的界面中写?
   如果是在notifyURL的配置中,如何写地址,需要跳转到2.hxml
5
帖子
0
勋章
1万+
Y币
1.不用api.loadSecureValue提取值
2.notifyURL是订单成功返回的连接页面,可在里面处理
28
帖子
0
勋章
130
Y币
在key.xml中进行了配置就不需要再代码中执行  iaf.config({  });  方法了吗?
8
帖子
0
勋章
147
Y币
我也是纳闷,不用js配置就提示配置错误。如果用js配置了,那key.xml文件是拿干嘛的??
梓梓梓梓 发表于 2015-8-28 21:50
在key.xml中进行了配置就不需要再代码中执行  iaf.config({  });  方法了吗?

是的,key.xml里配置好之后,直接调用pay接口即可
gysidon 发表于 2015-11-17 15:53
我也是纳闷,不用js配置就提示配置错误。如果用js配置了,那key.xml文件是拿干嘛的?? ...

检查下是不是你的key.xml文件配置错了,看下回调地址是否带参数,如果带则需要url编码,否则整个xml加密过之后,整个xml全部乱掉了,无法找到对应的key了
技术支持-M 发表于 2015-8-28 19:18
1.不用api.loadSecureValue提取值
2.notifyURL是订单成功返回的连接页面,可在里面处理 ...

支付宝的支付流程如下:
1,用户(客户端)向商家服务器获得商品信息
2,用户(客户端)把获取的商品信息及其支付信息通过调用支付控件(aliPay模块)向支付宝服务器发送支付请求
3,支付宝服务器处理请求
4,支付宝服务器把处理结果返回给用户(客户端)
5,支付宝服务器把处理结果返回给电商服务器(notifyURl)
6,电商服务器收到支付结果反馈
7,用户(客户端)收到支付结果反馈
8,用户(客户端)请求商家服务器验证支付结果是否一致
12
帖子
0
勋章
204
Y币
看看,后期做支付估计会有帮助
29
帖子
0
勋章
3127
Y币
aliPay_notifyURL 如何跳回自己的app
这样支付一点也不安全
12下一页
您需要登录后才可以回帖 登录

本版积分规则