读黎老师在线支付视频--视频随笔~~~Java┳ㄞ飞哥传智播客
2009-10-18 17:22
573 查看
=========== 网上支付 ==========
讲师:[黎活明]
第一课、在线支付功能的演示与概述
a.两种接入方案
.直接与银行对接
.通过中间公司间接与银行对接
b.直接与银行对接
优点:因为直接与银行进行财务结算,交易资金结算比较安全。适合资金流量
比较大的企业,这种方案适合于:每月结算金额百万以上的企业。
缺点:开发工作量比较大,而且银行会不定期升级交易系统,随着银行系统的
升级,企业也需要作相应改动,所以维护工作量也是比较大的,而且企业
每年还需要向银行交纳一定数量的接口使用费。
c.通过中间公司间接与银行对接
优点:开发工作量较少,因为使用的是中间企业提供的接入规范,所以银行升级
系统,不需要企业做相应修改,除非中间企业的接入规范发生改变,企业
才做相应修改。相对前一种接入方案,这种方案的维护工作量比较少的。
因为只与一家企业对接,所以接入费用相对比较低。这种方案适合于:
每月结算金额在几十万以下的中小企业。
缺点:因为是与中间企业进行资金结算,目前所有中间企业都是私企,资金安全是
个大问题。
b.现较好的中间公司,有首信易支付、易宝支付
第二课、分析易宝支付的工作流程
a.易宝支付接入规范
.MD5-hmac
hmac是一种秘密的密钥验证算法。hmac提供的数据完整性和源身份验证完全取决
于密钥分配的范围。如果只有发起者和接收者知道hmac密钥,那么这就对两者发送
的数据提供了源身份验证和完整性保证。=== 已提供该算法的加密类
b.支付流程
通过http请求方式向易宝支付网关发起一个支付请求,简单地说就是向
http://www.yeepay.com/app-merchant-proxy/node发起请求,请求可以是get或post
方式提交,页面应采用GBK/GB2312编码。下面使用表单以post方式向易宝支付网关发起
一个支付请求:
<form name="yeepay" action="http://www.yeepay.com/app-merchant-proxy/node" method="post">
<input type="hidden" name="p8_Url"
value="http://www.babasport.com/payment/response"/>
<input type="hidden" name="hmac"
value="2a8de8147356d97c464d197441052dd"/>
</form>
易宝支付网关对企业发来的数据使用用户的密钥生成MD5-hmac码,然后跟企业发来的MD5-hmac码,
如果相同则请求转发到银行网关,当用户支付完成后,银行网关会引导用户的浏览器到易宝支付
网关,然后易宝支付网关再引导浏览器重定向到企业提供的url上。
第三课、分析易宝支付网关的请求协议
a.加入JSTL1.1jar文件、编译级别5.0
b.界面采用巴巴运动网界面
c.对支付请求的数据加密生成MD5-hmac,都是易宝规定好的
d.易宝支付规范是数据:
StringBuffer sValue = new StringBuffer();
sValue.append(p0_Cmd);//业务类型 buy
sValue.append(p1_MerId);//商户编号
sValue.append(p2_Order);//商户订单号
sValue.append(p3_Amt);//支付金额
sValue.append(p4_Cur);//交易币种
sValue.append(p5_Pid);//商品名称
sValue.append(p6_Pcat);//商品种类
sValue.append(p7_Pdesc);//商品描述
sValue.append(p8_Url);//商户接收支付成功数据的地址
sValue.append(p9_ASF);//送货地址
sValue.append(pa_MP);//商户扩展信息
sValue.append(pd_FrpId);//银行编码
sValue.append(pr_NeedResponse);//应答机制 0, 1
String sNewString = DigestUtil.hmacSign(sValue.toString());
解释:应答机制 0, 1 0: 以200状态码为判断标准 1:以返回success为判断标准
第四课、编写易宝支付的客户端加密工具类
a.一个加密类、一个简单加密程序
b.简单看视频
第五课、编写用于准备请求数据的Servlet
a.支付请求的网关
b.步骤
.设置请求编码格式reques.setCharacterEncoding("GBK");
.取得UI层数据
.从属性文件获取值 cache缓存 static代码段
属性文件放置商家id、密钥和返回的Url地址
Url要提供公网上地址
.生成md5-hmac码
第六课、编写将数据提交给易宝支付的JSP页面
a.步骤补充:
.通过表单提交数据,测试情况下提交到测试网关
http://tech.yeepay.com:8080/robot/debug.action
通过将信息保存在request上再转发到form表单界面
第七课、集成和测试向易宝发送支付请求
a.测试成功
第八课、实现浏览器自动向易宝发送支付请求
a.自动表单提交
onload="javascript:document.forms[0].submit()"
第九课、分析易宝支付网关的应答协议与处理代码
a.把返回的数据进行加密在与返回的加密字符串进行判断,
如果相等则合法
如果不相等就恶意
b.编写方法
第十课、完成用于处理支付响应的Servlet的初步编写和调试
a.编写响应servlet
b.路由器的导向
第十一课、完成用于处理支付网关响应结果的Servlet
a. 步骤
.获得支付网关传来的数据
.对原数据进行加密
.判断加密字符串跟发送过来的数据是否一致
.做相应的操作
b.字段分析
r0_Cmd 业务类型 Buy在线支付
r1_Code 扣款结果,字段值为1时表示成功
r2_TrxId 易宝交易订单号
r3_Amt 扣款金额,交易结束后,YeePay易宝将扣款到商户
r4_Cur 交易币种 人民币CNY
r5_Pid 商品ID
r6_Order 商户订单号
r7_Uid YeePay易宝会员Id
r8_MP 商户扩展信息,可以任意填写1K 的字符串,交易返回时原样返回
r9_BType 交易结果返回类型,
1:交易结束回调(浏览器重定向) 2:交易成功主动通知(服务器点对点通讯)
rb_BankId 支付银行
rp_PayDate 在银行支付的时间
hmac Md5交易签名
第十二课、大结局,从招行帐户中向本系统成功支付1分钱
a.
地球围绕太阳转,世界围绕中国转。
月亮围绕地球转,中国围绕人民转。
爱小家,构大家。
http://www.javavideo.cn/
讲师:[黎活明]
第一课、在线支付功能的演示与概述
a.两种接入方案
.直接与银行对接
.通过中间公司间接与银行对接
b.直接与银行对接
优点:因为直接与银行进行财务结算,交易资金结算比较安全。适合资金流量
比较大的企业,这种方案适合于:每月结算金额百万以上的企业。
缺点:开发工作量比较大,而且银行会不定期升级交易系统,随着银行系统的
升级,企业也需要作相应改动,所以维护工作量也是比较大的,而且企业
每年还需要向银行交纳一定数量的接口使用费。
c.通过中间公司间接与银行对接
优点:开发工作量较少,因为使用的是中间企业提供的接入规范,所以银行升级
系统,不需要企业做相应修改,除非中间企业的接入规范发生改变,企业
才做相应修改。相对前一种接入方案,这种方案的维护工作量比较少的。
因为只与一家企业对接,所以接入费用相对比较低。这种方案适合于:
每月结算金额在几十万以下的中小企业。
缺点:因为是与中间企业进行资金结算,目前所有中间企业都是私企,资金安全是
个大问题。
b.现较好的中间公司,有首信易支付、易宝支付
第二课、分析易宝支付的工作流程
a.易宝支付接入规范
.MD5-hmac
hmac是一种秘密的密钥验证算法。hmac提供的数据完整性和源身份验证完全取决
于密钥分配的范围。如果只有发起者和接收者知道hmac密钥,那么这就对两者发送
的数据提供了源身份验证和完整性保证。=== 已提供该算法的加密类
b.支付流程
通过http请求方式向易宝支付网关发起一个支付请求,简单地说就是向
http://www.yeepay.com/app-merchant-proxy/node发起请求,请求可以是get或post
方式提交,页面应采用GBK/GB2312编码。下面使用表单以post方式向易宝支付网关发起
一个支付请求:
<form name="yeepay" action="http://www.yeepay.com/app-merchant-proxy/node" method="post">
<input type="hidden" name="p8_Url"
value="http://www.babasport.com/payment/response"/>
<input type="hidden" name="hmac"
value="2a8de8147356d97c464d197441052dd"/>
</form>
易宝支付网关对企业发来的数据使用用户的密钥生成MD5-hmac码,然后跟企业发来的MD5-hmac码,
如果相同则请求转发到银行网关,当用户支付完成后,银行网关会引导用户的浏览器到易宝支付
网关,然后易宝支付网关再引导浏览器重定向到企业提供的url上。
第三课、分析易宝支付网关的请求协议
a.加入JSTL1.1jar文件、编译级别5.0
b.界面采用巴巴运动网界面
c.对支付请求的数据加密生成MD5-hmac,都是易宝规定好的
d.易宝支付规范是数据:
StringBuffer sValue = new StringBuffer();
sValue.append(p0_Cmd);//业务类型 buy
sValue.append(p1_MerId);//商户编号
sValue.append(p2_Order);//商户订单号
sValue.append(p3_Amt);//支付金额
sValue.append(p4_Cur);//交易币种
sValue.append(p5_Pid);//商品名称
sValue.append(p6_Pcat);//商品种类
sValue.append(p7_Pdesc);//商品描述
sValue.append(p8_Url);//商户接收支付成功数据的地址
sValue.append(p9_ASF);//送货地址
sValue.append(pa_MP);//商户扩展信息
sValue.append(pd_FrpId);//银行编码
sValue.append(pr_NeedResponse);//应答机制 0, 1
String sNewString = DigestUtil.hmacSign(sValue.toString());
解释:应答机制 0, 1 0: 以200状态码为判断标准 1:以返回success为判断标准
第四课、编写易宝支付的客户端加密工具类
a.一个加密类、一个简单加密程序
b.简单看视频
第五课、编写用于准备请求数据的Servlet
a.支付请求的网关
b.步骤
.设置请求编码格式reques.setCharacterEncoding("GBK");
.取得UI层数据
.从属性文件获取值 cache缓存 static代码段
属性文件放置商家id、密钥和返回的Url地址
Url要提供公网上地址
.生成md5-hmac码
第六课、编写将数据提交给易宝支付的JSP页面
a.步骤补充:
.通过表单提交数据,测试情况下提交到测试网关
http://tech.yeepay.com:8080/robot/debug.action
通过将信息保存在request上再转发到form表单界面
第七课、集成和测试向易宝发送支付请求
a.测试成功
第八课、实现浏览器自动向易宝发送支付请求
a.自动表单提交
onload="javascript:document.forms[0].submit()"
第九课、分析易宝支付网关的应答协议与处理代码
a.把返回的数据进行加密在与返回的加密字符串进行判断,
如果相等则合法
如果不相等就恶意
b.编写方法
第十课、完成用于处理支付响应的Servlet的初步编写和调试
a.编写响应servlet
b.路由器的导向
第十一课、完成用于处理支付网关响应结果的Servlet
a. 步骤
.获得支付网关传来的数据
.对原数据进行加密
.判断加密字符串跟发送过来的数据是否一致
.做相应的操作
b.字段分析
r0_Cmd 业务类型 Buy在线支付
r1_Code 扣款结果,字段值为1时表示成功
r2_TrxId 易宝交易订单号
r3_Amt 扣款金额,交易结束后,YeePay易宝将扣款到商户
r4_Cur 交易币种 人民币CNY
r5_Pid 商品ID
r6_Order 商户订单号
r7_Uid YeePay易宝会员Id
r8_MP 商户扩展信息,可以任意填写1K 的字符串,交易返回时原样返回
r9_BType 交易结果返回类型,
1:交易结束回调(浏览器重定向) 2:交易成功主动通知(服务器点对点通讯)
rb_BankId 支付银行
rp_PayDate 在银行支付的时间
hmac Md5交易签名
第十二课、大结局,从招行帐户中向本系统成功支付1分钱
a.
地球围绕太阳转,世界围绕中国转。
月亮围绕地球转,中国围绕人民转。
爱小家,构大家。
http://www.javavideo.cn/
相关文章推荐
- 读传智播客黎老师EJB视频随笔上
- 传智播客OA我的课堂笔记~~建议大家学习我的做笔记的格式!Java┳ㄞ飞哥
- 读传智播客黎老师EJB视频随笔下
- 传智播客Ajax视频前十集视频随笔
- 【备忘】2017最新传智播客黑马java 32期基础就业班视频教程
- Java200套2500G架构师视频,涵盖:分布式、集群、大数据、算法、设计模式、支付结算、在线视频、P2P,Q4407509
- 传智播客 2015 刘意 Java基础-视频-笔记day27(完结)(2016年5月1日12:53:07)
- spring ---- 传智播客spring视频学习随笔上
- Java中集合框架工具类——Collections(传智播客毕老师视频讲解)
- 【经典】传智播客韩顺平Java和javaEE视频教程完整版 [30.16G]倾情奉献
- 传智播客_毕向东_Java基础视频教程学习笔记(一)
- 《正版分享》2014年传智播客.NET JAVA 安卓 C/C# C++ PHP IOS WIN8 平面设计 视频教程
- JAVA项目实战,项目架构,高并发,分布式,微服务架构,微信支付,支付宝支付,理财系统,并发编程视频
- java activiti5 在线web流程设计器整合视频教程 SSM和独立部署
- 传智播客JAVA培训OA视频回顾总结
- 传智播客java培训2010年4月18java高新技术3,张孝祥老师视频自学总结
- 传智播客Java培训全集全面精通视频培训教程(上下集)
- JAVA在线项目视频教程
- Struts开发视频教程-传智播客-张孝祥-经典java教程
- java视频网站收藏、传智播客下载地址。