3行代码,如何开发网页支付?

作为网站的开发者而言,开发支付一直都不是一件简单的事情。一方面,支付安全非常敏感,平常程序员写代码出点小bug很正常,一旦涉及到支付,一个极小的bug也可能带来重大的经济损失;另外,后端的语言千差万别,PHP,Java,.NET,Python,Go,Ruby on Rails等不同的语言框架有不同的接口,也有不同的坑,都需要开发者去填;除此之外,支付的流程也并不简单,涉及到用户端、商户端以及支付渠道端3方的数据交互、网络请求以及错误处理等。

3行代码,如何开发网页支付?_第1张图片

BeeCloud一直在思考如何帮助开发者解决这些问题,也为开发者提供了多语言的SDK,只需很少的几行代码,就能把支付端,后端,支付渠道端的所有信息交互做好,这样开发网页支付的难度将会大大降低。但使用SDK也存在诸多不便之处:比如SDK版本更新之后,需要开发者及时去网站上将老的SDK替换掉,即使使用了maven这样的管理系统,开发者也需要将整个项目重新打包,重新发布项目;再比如,引入SDK到开发者的项目中可能会导致各式各样的兼容性问题,例如Java里的引用冲突,命名冲突,JDK版本不一致导致报错等等;SDK的文档有的时候也很晦涩难懂,在帮开发者解决了一个难题的同时,又给他出了另一个难题。那么有没有一种简单,轻巧,安全,功能完备,且免SDK解决方案呢?秒支付Button就是在这样的反复思考中灵光一闪的创意。

秒支付Button只需要3行代码就可直接接入微信,支付宝,银联等在线支付方式,那么我们来看看是哪3行代码呢?

第一行代码,在BeeCloud配置好支付参数,配置好需要展示的支付方式以及顺序之后,由BeeCloud后台自动生成,一旦生成永远不会变化,不需要任何升级:

<script id=’spay-script’ src=’https://jspay.beecloud.cn/1/pay/jsbutton/returnscripts?appId=XXXXX’></script>

这一行代码的作用在于从BeeCloud云后端加载本网站的支付环境。

第二行代码,写在后端语言中,算出支付的数字签名,例如PHP中:

$sign = md5($appId.$title.$amount.$out_trade_no.$appSecret);

第二行代码至关重要,首先$appSecret是用来加密的密钥,只能在后台语言例如PHP,Java中使用,而绝对不能再客户端的JavaScript语言中使用。否则黑客可以直接读取密钥。第二行代码的功能是保证客户端的黑客无法在JavaScript中随意修改订单金额,否则黑客就可以花1分钱购买到价值一万元的商品。每一笔订单信息通过MD5加密来保证信息的完备性,有任何篡改都可以识别出来。

第三行代码,在某个支付按钮的onClick事件处理函数里调用:

BC.click({ “title”:”奶茶”, “amount”:”10000″, “out_trade_no”:”奶茶编号101″, “trace_id”:”买奶茶的人”, “sign”:”xxxxx”, “return_url” : “http://同步跳转页面”, “optional” : {“附加信息”:”好喝”}});

用户点击支付按钮后,将弹出一个支付方式选择框,里面有开发者在BeeCloud设置好的支付方式,例如支付宝,银联,微信等,用户再点击其中的一个支付按钮,即可开始支付。

随后,开发者可以通过异步的回调Webhook或者实时的订单查询接口来获取支付结果,进行支付后逻辑的开发。

秒支付Button将“支付前”与“支付后”这两个开发的节点无缝地接合在了一起,极大地为开发者排忧解难。同时由于完全没有SDK的接入,一次开发,一劳永逸,开发者永远不需要去担心如何更新支付的代码,只需要去BeeCloud修改秒支付Button的配置,所有的修改即可实时生效。

如果觉得这3行代码还不够简单,请联系我上门帮你开发支付!


你可能感兴趣的:(微信支付,支付宝,银联,支付SDK,网页支付)