您的位置:首页 > 其它

支付宝WEB支付

2015-09-08 15:57 148 查看

1. 账号准备

1. 签约产品

首先需要有一个用来收款的商家账号(一般是让客户提供),这个账号需要签约对应的产品,见(https://b.alipay.com/order/products.htm?channel=ent)



这里我用到的是即时到账

2. Pid和key

然后需要知道pid和key,见(https://b.alipay.com/order/pidAndKey.htm),这2个参数在调用支付接口的时候会用到



3. 接口文档

然后下载对应的文档(https://b.alipay.com/order/techService.htm?channel=ent)



我这里用到的是即时到账收款

2. 文档解读

1. 文档结构

解压压缩文档可以看到下面的目录



打开第一个文件夹看到



Demo文件夹是各种语言的demo实现,即时到账交易接口(create_direct_pay_by_user).pdf是接口的具体细节,标红的是我们需要主要关注的

先看看 即时到账交易接口(create_direct_pay_by_user).pdf
我们主要需要关注的地方是pdf的第11页的请求参数说明



具体需要用到的参数看后面的代码

2. demo解读

然后我们打开demo文件夹,可以看到



用IDE打开项目



从index.jsp开始查看可以看到具体的流程。代码很简单。

3. 具体实现

1. Form提交

首先你在自己的站点把你需要的数据form提交到后台



我这里只有一个积分,你可以有更多的其他数据。

然后数据来到controller



下面就是各种的提交参数,具体的参数的作用可以看接口文档。





Controller return到如下这样的一个页面



是把controlle里的拼接的html提交了。,然后就会出现支付页面。



能出来这个页面基本就算成功了。

其实把所有的参数放在页面提交有时候也是可以的,为什么说有时候?因为我们的站点一般是http,支付宝的页面是https,会有提交不了的情况。而且支付宝的demo也是用后台拼接form的方式,是为了生成sign?还是为了安全?应该主要是为了安全,所以还是推荐按支付宝demo的做法去做。

2. 支付成功回调

最后看一下我的回调函数



代码很简单,判断trade_status的状态进行对应的业务处理就可以了,有一点要注意的就是这个方法支付宝可能会回调多次。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  支付宝