不会做,看看也可以会,要做好就还是需要多学习
国庆回来就一直没状态,看完《银河护卫队》,印象最深的竟然是只有两句台词的呆萌groot,昨天才休息一天,大耍大吃,今天还是把昨天的知识学习一下。前些天同事做一网站,需要用到支付宝接口,由于同事才学习PHP,我比他多学习了两天,我就帮忙参考了一下。
demo就是教程
支付宝官方网站(https://b.alipay.com/order/techService.htm)下载了开发包,直接拷贝了PHP版本作为我们需要的版本,里面直接就是一个demo。要怎么做呢?没吃过蛇肉还没见过蛇跑啊,要是没见过就去见识见识,毕竟关系到“人民币”。按照用户的习惯还是熟悉一下流程:加购物车(项目直接忽略,定向人群)- 下订单 - 确认订单 - 支付订单。
思路整理分析:(仅仅来源于一个顾客的思路,不正确请留言指教一下,谢谢!)
    下订单:订单数据交互至数据库,跳转至确认订单页面
    确认订单:订单数据显示给顾客确认一下
    支付订单:跳转至支付流程页面
    订单状态:订单状态修改一下
问题整理分析:(问题来源于新手刚刚看完DEMO)
    数据是通过表单提交信息至确认订单页面,直接获取数据库数据?还是显示表单提交的信息?
    确认订单后跳转至支付页面,直接获取数据库数据?还是显示表单提交的信息?
支付流程现实是这样的
如图一,下订单页面,页面如图,信息来源于第一界面,数据仅仅是针对顾客的第一预览。

页面中的信息无需如此,简单修改了一下,提交订单后跳转至alipayapi.php,页面内接受信息再让用户确认一下,或者直接取消显示的确认按钮,数据通过订单号,查询出商品单价等信息进行提交。(提到这里仅仅是因为当时开发中的一个小插曲,异步的不能修改状态,于是我帮忙测试的时候,我价格修改为了0.01元,支付成功,同步状态修改,如果是发货的话,不得气死,还好只是类似于支付定金,还好有人审核,但是这终究是一个问题)。问题来源于alipayapi没有进行数据验证,关系到钱的程序还是要谨慎一点好。
走一下接口开发流程
很简单的修改一下配置文件alipay.config.php,再然后简单的配置一下alipayapi.php,主要说明一下这两项:
//服务器异步通知页面路径
$notify_url = "http://商户网关地址/create_direct_pay_by_user-PHP-UTF-8/notify_url.php";
//需http://格式的完整路径,不能加?id=123这类自定义参数

//页面跳转同步通知页面路径
$return_url = "http://商户网关地址/create_direct_pay_by_user-PHP-UTF-8/return_url.php";
//需http://格式的完整路径,不能加?id=123这类自定义参数,不能写成http://localhost/
这里我们默认通知页面为:http://www.pushself.com/
$notify_url = "http://www.pushself.com/notify.php";
$notify_url = "http://www.pushself.com/return.php";
notify.php页面就是支付订单页面,登录支付宝支付(扫一扫支付)后,支付宝自动抓取的页面。
return.php页面就是支付订单页面,登录支付宝支付(扫一扫支付)后,页面跳转至的回调页面。
主要是针对扫一扫支付,以上两个页面为成功后做修改状态操作,return.php是支付过程中不能关闭浏览器,关闭了就不能修改状态,相反此时notify.php就会起作用了,关闭浏览器后,支付宝自动抓取这个页面,如果抓取到success,此次交易就完成了。

乱是乱了点儿
做事需要的是坚持,有些事情不做就永远也不会。

支付宝(alipay)即时到账收款接口开发中的那些事儿的更多相关文章

  1. java 支付宝 第三方即时到账支付 接口

    alipay 的几个内核功能文件:=================================================================================== ...

  2. 个人免签即时到账收款接口 bufpay.com 支持多账号收款

    有很多 bufpay 的用户反馈,单个手机收款有些时候不太方便,切换手机太麻烦:或者是营业额比较多,希望分摊到多个账号上面. 基于以上的问题,bufpay 开发了多手机收款的功能:每个收款的手机安装 ...

  3. 关于http接口开发中json格式数据编码问题处理

    关于http接口开发中json格式数据编码问题处理 在实际工作中,接口很多时候返回json格式,但有时返回的格式会有编码问题 假设如下接口:http://service.test.com/interf ...

  4. 个人开发者即时到账收款方案 BufPay.com

    BufPay 个人即时到账支付平台 前言 作为独立开发者,一般只有一个人独立奋战,做出了产品需要收款是非常麻烦的,接入支付宝微信支付都需要公司公户,而注册公司.开公户等一系列操作非常麻烦,成本也很高一 ...

  5. 支付宝PC即时到账和手机网站支付同步

    前几个月做了一个旅游网站,有PC站和手机站,涉及支付宝支付功能. 要求:PC站下的单,用户用手机登录也能支付;同理,手机站下的单,PC端登录也能支付. 附支付宝开放平台网址:即时到账 ,手机网站支付. ...

  6. 支付宝即时到账交易接口C#接入方式的几个坑

    1.在官方文档中 https://docs.open.alipay.com/62/104743 可以清楚看到input_charset前面没有要求加下横杠,可是请求示例是带着的.经过实验得知,这个必须 ...

  7. 微信支付宝个人免签约即时到帐接口开发附demo

    支付界面: 扫码支付界面: 付成功后可以跳转到你程序指定的地址! demo: http://likeyunba.com/WeChat-Pay/

  8. 微信小程序接口开发中解决https外网调试问题

    准备工作 1.有一台阿里云的Linux CentOS6 服务器,安装支持ssl模块的Nginx 2.有自己的域名,把域名解析到指向该服务器IP,本例中将wx.wangjiang.net 解析到服务器I ...

  9. 接口开发中 遇到的坑——Java byte与C# byte 数据转换问题

    前提: 公司与其他公司进行接口对接 需要使用Byte[]数据流传输数据 原本想法如下:直接IO生成就ok了 using System; using System.IO; using System.Te ...

随机推荐

  1. vector容器用法详解

    vector类称作向量类,它实现了动态数组,用于元素数量变化的对象数组.像数组一样,vector类也用从0开始的下标表示元素的位置:但和数组不同的是,当vector对象创建后,数组的元素个数会随着ve ...

  2. MongoDB学习记录(一) - 安装、启动与建立数据库

    简要说明一个基本概念:MongoDB中的三要素:数据库(database).集合(collection)和文档(document). 文档:类似于JSON对象,由字段(field)和值(value)组 ...

  3. C#部分试题实例

    1.在C#中,下列选项中自定义方法的语句错误的是().(选择一项) 正确答案:AD 解析:本题考查自定义方法的定义及调用.A项void是无返回值类型,D项定义方法的时候没有写返回值类型:故选AD. 2 ...

  4. # 2019-2020-3 《Java 程序设计》第四周总结

    2019-2020-3 <Java 程序设计>第四周知识总结 第五章:继承 1.定义继承关系的语法结构: [修饰符] class 子类名 extends 父类名 { 类体定义 } 父类中应 ...

  5. UVa 11645 Bits (暴力+组合数学)

    题意:给定一个数 n,求 0 ~ n,中二进制表示中连续两个 1 出现的次数. 析:枚举连续的两个 1,从低位向高位进行枚举,然后前可以是任意数,后面也是任意的,如果 n 正好是 11 还要另算,举个 ...

  6. valgrind内存检测工具

    valgrind 那点事 ---------------------------------------内存检测工具 valgrind要使用此工具,可以使用--tool=memcheck 在Valgr ...

  7. C程序编程规范一

    和身边一些学弟们接触发现他们的编程习惯不是太好,对一些基本的规范不重视,今天有时间写一些基本的规范给一些刚入门的新手们,高手可忽略. 首先做项目来说需要建立工程,一般需要几个到几百个上上千个C文件,这 ...

  8. azkaban disable 停用部分工作流

    在使用azkaban作为调度工具的时候,难免遇到只需要跑工作流某部分的情况,这时需要用到停用部分工作的操作, 如图:

  9. 用scp这个命令来通过ssh传输文件

    小结: 1. upload files 到 ssh 服务器 localhost $ scp localfile root@172.20.34.**:~/remotepath 2. 从 ssh 服务器d ...

  10. NET Core微服务之路:SkyWalking+SkyApm-dotnet分布式链路追踪系统的分享

    对于普通系统或者服务来说,一般通过打日志来进行埋点,然后再通过elk或splunk进行定位及分析问题,更有甚者直接远程服务器,直接操作查看日志,那么,随着业务越来越复杂,企业应用也进入了分布式服务化的 ...