赞
踩
其实理顺了思路后,按照我接下来的步骤来,真的超级简单啊,为啥有那么多的朋友们折腾了那么久呢,嘿嘿,接下来跟我走吧~
我是昨天晚上洗完澡之后,大概八九点,才开始正式开工尝试去这一工程的,我去支付宝的蚂蚁金服开放平台里把各个知识点和文档大概都看了一遍,大致弄明白了要怎么操作了,建议大家看看电脑网站开发文档,我忙到了夜里十二点左右,成功地用支付宝给的Demo完成了付款操作。
我下载的是PHP的Demo。
下载好了之后,我把Demo解压到了我项目的根目录下了,目录结构如下所示:
这里有三个文件很重要很关键,一个是notify_url.php, 一个是return_url.php, 另一个是config.php,他们分别是支付结果异步通知,支付结果同步通知,和配置文件。通知文件是来写业务逻辑的,而配置文件是来写配置参数的。
我们打开配置文件config.php,看一下我们需要写哪些配置参数。
我们可以看到,需要我们来填写的有6个参数:“应用ID”,“商户私钥”,“异步通知地址”,“同步跳转地址”,“支付宝网关”,“支付宝公钥”
。这些参数非常非常重要,一个都不能填错。然而,我们要怎么获取这些参数呢?
首先,应用ID,这就是我们用的沙箱的ID,可以在蚂蚁金服开放平台的开发者中心的沙箱环境中查看沙箱应用信息,沙箱应用就是给我们在正式应用上线前用来进行测试开发的。
现在我们已经获得了应用ID和支付宝网关了,把这两个参数填到config.php中去。
这个位置下面有一个选看部分:
这里的应用网关和授权回调地址我们不需要填,这是口碑开发才需要填的,我们做的只是普通的电脑网站支付,不需要填这个。
现在商户私钥和支付宝公钥要怎么填呢?当然是还在刚才的沙箱环境找啦
支付宝推荐我们使用RSA2生成一对秘钥,那我们就依着它说的做,点击生成方法下载对应操作系统的秘钥生成器,我是用windows的秘钥生成器,下载之后,很容易操作就生成了一对秘钥,这时我们需要将私钥放进config.php中的商户私钥的参数里,而公钥放到沙箱环境中。
友情提醒:这里有个大坑,就是将私钥粘贴到config.php中里去的时候,私钥这个字符串中间不能有回车符,我当时的私钥粘贴进去的时候,就被格式化了似的,是一个特别整齐的矩形的形状(因为在每一行等长的位置填补了回车符),结果导致前几次支付时一直显示“missing-signature”,缺少签名参数,我去开放平台文档中心的沙箱常见错误里查了一下才发现了原因,因为这个害的我浪费了好多时间呢。大家也可以看一下这个表:
接下来要将生成的公钥放到沙箱环境中,点击“查看应用公钥”,将公钥复制到这里面。
由于我们选择的秘钥方式是RSA2,所以下面的RSA我们就不用填了。
填好了应用公钥之后,我们就可以点击旁边的按钮“查看支付宝公钥”了,因为这时候已经根据应用公钥自动生成了支付宝公钥,将支付宝公钥也填进config.php文件里相应的位置。
这时候我们已经填好了四个参数:“应用ID”,“商户私钥”,“支付宝网关”,以及“支付宝公钥”。
现在还剩下’return_url’ 和 'notify_url’对应的键值没有填写,我当时写的是我的本地的return_url.php 和 notify_url.php对应的项目路径,如图所示,其中JudgeOnline是我的项目名称。
其实异步通知地址这样写是有问题的,然而我是直到今天下午才发现这个bug,待会再说。
打开alipay文件夹下的index.php文件,然后就凭这么多年用支付宝的经验,顺利完成了一次支付。
以下图片是我昨晚用手机拍的支付过程:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。