前端工程师在实在支付功能的时候能做些什么(V客学院技术分享)?

现在最流行的两种支付微信支付支付宝支付,在日常开发的过程中肯定离不开支付功能的开发,有很多人第一次接触时会有些措手不及。

一.业务逻辑 (电商平台为例子)

支付大部分用在电商平台,各种打赏,游戏充值等等,只要涉及到支付,就一定会有订单逻辑:

1.用户选择产品后进入提交订单流程 ----> 生成订单 (待付款)

2.生成订单后进入支付流程 --->选择支付方式(支付或者微信)

3.唤起对应的支付应用程序,用户确认金额并支付,支付成功后 ----->完成订单 (已付款);

在这个过程中,前端工程师能干什么?

二.前端开发部分

    业务逻辑第1阶段,前端部分可能根据用户的选择的产品,生成对应的订单信息(商品信息,收获地址等)并选择优惠,最终确认最后应该支付的总金额,

注意,因为安全性的原因,前端算出来的总支付金额,只是给用户确认的,最后支付金额肯定是由后端算出来的,然后前后两端金额对比无误后,进入也逻辑第2阶段,支付阶段。

这个时候需要前端去选择并唤起支付程序(微信或支付宝),然后通过微信或者支付的提供的对应API,唤起支付

三.微信支付

    准备阶段:不管是网页支付,小程序支付,还是APP支付,必须要先确认一个收钱的人,微信商户平台,商户平台是和微信公众号(审核已通过)绑定使用,有已审核的公众号才能开通商户平台,申请过程按微信提供的顺序走就可以了,申请好后,对应的配置由后端完成,毕竟前端部分代码用户很容易看到,不安全。

公众号网页端唤起支付的方式:

1.引入js-sdk 文件 (进入下载)

2. 监听微信js-sdk 初始化成功事件

3.在适当场合唤起支付

详细参数说明参考微信官方文档 https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6

小程序支付: (参数说明:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/payment/wx.requestPayment.html)

微信小程序因为是微信自己的生态系统,不需要单独引入JS-SDK,直接调用wx提供的api方法

wx.requestPayment({
  timeStamp: ‘‘,
  nonceStr: ‘‘,
  package: ‘‘,
  signType: ‘MD5‘,
  paySign: ‘‘,
  success (res) { },
  fail (res) { }
})

 HTML5+ 微信支付

     1.在manifest.json中配置对应的微信开放平台APP ID

     

2. 检查支付是否已配置或是否配置正确,正确则返回对应支付通道,"alipay" - 表示支付宝; "wxpay" - 表示微信支付

plus.payment.getChannels( function(s){
        channels = s;
}, function(e){
        alert( "获取支付通道列表失败:"+e.message );
});

3.唤起支付

// 必须从业务服务器获取支付信息
var statement = "...";
plus.payment.request(c, statement, function(){
        alert("支付操作成功!");
}, function(e){
        alert("支付失败:"+e.message);
} );

c为支付通道,由第二步获得,statement由服务端提供的支付信息,通常是一个包含订单信息和支付成功回调的链接地址

H5+支付API文档地址 http://www.html5plus.org/doc/zh_cn/payment.html#plus.payment.request

四:支付宝支付

    准备阶段:需要申请支付宝交易号,和微信商户号同理

    支付宝H5支付:

    1.引入支付宝js-sdk  <script src="https://gw.alipayobjects.com/as/g/h5-lib/alipayjsapi/3.1.1/alipayjsapi.min.js"></script>

    2.执行唤起支付宝代码:支付宝API地址 http://myjsapi.alipay.com/jsapi/native/trade-pay.html

<h1>点击以下按钮唤起收银台支付</h1>
<a href="javascript:void(0)" class="btn tradenoPay">支付宝交易号唤起支付</a>
<script>
function ready(callback) {
  // 如果jsbridge已经注入则直接调用
  if (window.AlipayJSBridge) {
    callback && callback();
  } else {
    // 如果没有注入则监听注入的事件
    document.addEventListener(‘AlipayJSBridgeReady‘, callback, false);
  }
}
ready(function(){
  document.querySelector(‘.tradeno‘).addEventListener(‘click‘, function() {
    AlipayJSBridge.call("tradePay", {
      tradeNO: "201802282100100427058809844"
    }, function(result) {
      alert(JSON.stringify(result));
    });
  });
});
</script>

支付宝H5+支付 同微信支付类似,并且默认不需要配置,钩上即可,调用方式同微信一样

(php开发,web前端,ui设计,vr开发专业培训机构,v客学院版权所有,转载请注明出路,谢谢!!!)

     


   

      

        

原文地址:https://www.cnblogs.com/gaomingchao/p/10018230.html

时间: 2024-11-09 06:03:39

前端工程师在实在支付功能的时候能做些什么(V客学院技术分享)?的相关文章

如何成为优秀的前端攻城师 (V客学院知识分享)

什么是前端呢?大部分人都停留在'前端就是切页面,而且页面开发没什么技术含量,很简单!',事实上前端不仅仅只限于此. 不同时期对互联网技术的看法是不一样的,对前端的认知一也是不一样的.在互联网早期时,小车还是比房子贵的,烧饼和粉丝还只是用来吃的,菊花还只是用来泡茶的.那时的页面设计风格相对单一,对应的页面需求比较简单,并且当时的浏览器也基本是IE6的天下,javascript也只是网页特效的代名词,HTML页面本身没有引起太多人关注,似乎只要能用div甚至table加css辅助把图片定好位,把页面

说说前端工程与前端工程师

为什么需要前端工程 因为大规模工业化生产的需要 前端工程的定义 前端工程是一套关于如何保障开发质量与开发效率的系统方法论及其配套的技术方案体系 质量:持续的满足一系列指标,能够确保整个生命周期内质量是可控的 效率:效率由产出与成本定义,提高效率就是提高单位消耗的产出,或者降低同等产出的成本,更简单的说,效率就是成本,效率意识就是成本意识 前端工程的范畴 前端工程的核心内容是针对特定业务创造最优的技术方案组合,有的方案是用现成的,有的方案是自己造的 前端工程专注于解决前端开发的质量与效率问题,但并

美团第一位前端工程师竟是转行程序员!关于他的10年技术生涯

从饭否到美团,潘魏增用十年的技术生涯,诠释了"长期有耐心"这句话的含义.在他看来,长期有耐心,其实也是延迟满足感.对从事的行业来讲,我们要把眼光放得更长远一些,十年后才有回报的生意,往往都是大买卖. 对个人来讲,不要把职位.职级这些虚的东西看得过重,关键看我们自己在其中承担什么角色,看我们自己的能力是否还有成长的空间. #从电子工程转到计算机 1.为什么大学读的是电子系,但是毕业后却选择了互联网行业? 潘魏增:高中时,对物理比较感兴趣,学校有一个逸夫图书馆,里面有大量关于物理的课外读物

极客学院Web前端开发技术实战视频教程 初级入门+高级实战++专家课程+面试指导

===============课程目录=============== ├<初级中级>│  ├<1. HTML5开发前准备>│  │  ├1.HTML5开发前准备.mp4│  │  └2.开发前的准备-快捷键.mp4│  ├<10. React.js>│  │  ├React.js简介.txt│  │  ├<1.React 概述>│  │  │  ├React 开发环境搭建.mp4│  │  │  ├编写第一个 React 程序.mp4│  │  │  └什么

web前端工程师在移动互联网时代里地位问题

支付宝十周年推出了一个新产品:支付宝的十年账单,我也赶个时髦查看了一下我的支付宝十年账单,哎,感慨自己真是太屌丝了,不过这只是说明我使用淘宝少了,当我大规模网上购物时候,我很讨厌慢速的快递,所以我大部分消费都贡献给了像京东这样具有火箭般快递速度的电子商城了.不过在支付宝十年账单里,有个统计数据引起了我的危机意识,在中国一些偏远或者是经济欠发达的省份,电子购物在居民的全部消费里的占比比发达地区高多了,而这个的助推剂居然是移动互联网在中国的普及,在中国使用智能手机和平板电脑购物的人们已经远超使用PC

作为一个合格的Web前端工程师,需要具备哪些技能呢?

那么作为一个合格的Web前端工程师,需要具备哪些技能呢? HTML5 HTML是超级文本标记语言,是为"网页创建和其他可在网页浏览器中看到的信息"设计的语言.HTML5是由万维网发布的最新的语言规范,是开放的Web网络平台的奠基石,所以做Web前端,精通HTML5是必须要掌握的一项技能. CSS3 CSS即层叠样式表. 在网页制作时采用层叠样式表技术,可以有效地对页面的布局.字体.颜色.背景和其它效果实现更加精确的控制. 只要对相应的代码做一些简单的修改,就可以改变同一页面的不同部分,

淘宝前端工程师:国内WEB前端开发十日谈

转自:http://www.jianshu.com/p/8cf2df3fdbf2 一直想写这篇“十日谈”,聊聊我对Web前端开发的体会,顺便解答下周围不少人的困惑和迷惘.我不打算聊太多技术,我想,通过技术的历练,得到的反思应当更重要. 我一直认为自己是“初级”前端开发工程师,一方面我入道尚浅,只有短短几年,另一方面我自知对技术的钻研并不深入,可能是由于环境的原因,当然最重要的是,我幸运的参与到互联网崛起的浪潮之巅.时势造就了一批技能薄弱但备受追捧的“弄潮者”,这在很大程度上影响我们对“技术本质”

如何玩转微信支付功能的原理和开发(转)

打开微信,各种营销信息霸占了我的眼球,以“微信支付+微信小店”的模式挑战阿里“支付宝+淘宝天猫”的模式开启了新纪元,腾讯此举是在革淘宝的命吗?有人说,微信对阿里最大的挑战,是把连接能力下发给了企业/用户,让企业/用户而不是平台自身发挥主动权和能动性来建立新的连接模式. 近年来,移动支付发展迅猛,移动支付已经成为了不可抵挡的发展趋势,其引领了新一轮的支付潮流.从某种角度来讲,反观移动互联网的迅速发展,对微信的快速发展起到了很大的推动力,其所蕴含的巨大潜力使其成为了市场争相抢夺的香饽饽.一时间各种支

前端工程师如何快速的开发一个微信JSSDK应用

亲们,订阅号出来已经很久了,作为一个前端工程师或者全栈工程师,你是不是错过了什么?大概许多攻城狮同砚还没有反应过来订阅号怎么回事,就马上要被微信的应用号秀一脸了.在应用号还没有正式出来之前,我们赶紧一起来看看怎样给自己的订阅号加个网页功效吧. 一.订阅号网页与平凡的HTML5网页的区别 可能会有很多同学还没有弄清楚普通的HTML网页与订阅号网页的差别,我在这里简朴的说明一下. 订阅号的网页就是微信的网页,普通的网页是W3C范例下的网页. 订阅号的网页通常是以遵守W3C的网页规范为前提的,但是也有