中国银行app,H5页面调取支付,并返回状态码。
/*** 识别设备终端,获取app相关信息*/window.terminal = (function () {var u = navigator.userAgent;//app = navigator.appVersion;return {//浏览器版本信息trident: u.indexOf('Trident') > -1,presto: u.indexOf('Presto') > -1,webKit: u.indexOf('AppleWebKit') > -1,gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') > -1,mobile: !!u.match(/AppleWebKit.*Mobile.*/),ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1,iPhone: u.indexOf('iPhone') > -1,iPad: u.indexOf('iPad') > -1,webApp: u.indexOf('Safari') > -1,weixin: u.indexOf('MicroMessenger') > -1 && u.replace(/.*(MicroMessenger\/[^\s]*).*/, "$1").replace("MicroMessenger/", "") || false,appVersion: u.indexOf('bocapp(') > -1 ? u.match(/bocapp\(\S+\)/)[0].slice(7, -1) : '3.0.0'};})()// *// * APP版本号比较方法// * @param (String) version1 版本号1,当前版本号// * @param (String) version2 版本号2,要求最低版本号// * @returns {Number} 判断版本号1是否高于版本号2,高于为1,等于为0,低于为-1// APP当前版本号获取方法:window.terminal.appVersionwindow.versionCompare = function (version1, version2) {var v1 = version1.split('.');var v2 = version2.split('.');for (var i = 0; i < v1.length; i++) {if (v1[i] * 1 > v2[i] * 1) {return 1; // 当前版本号大于要求最低版本号} else if (v1[i] * 1 < v2[i] * 1) {return -1; // 当前版本号小于要求最低版本号}}return 0; // 当前版本号等于要求最低版本号}/*** 引入cordova*/var script = document.createElement('script')var pth = "https://ebsnew.boc.cn/bocphone/BocMerchant/" // 生产环境// 外网环境直接引用生产地址即可,若需新增cordova方法,另行提供DMZ区地址if (window.terminal.iPhone) {script.src = pth + 'paylib/ios.js'} else if (window.terminal.android) {script.src = pth + 'paylib/android.js'} else {alert('无法识别终端类型')}document.getElementsByTagName('head')[0].appendChild(script)
调取代码
//调起APP支付 res数据为后端返回document.addEventListener('deviceready', function () {var setting = {// 下述数据仅为示例,实际数据上送格式请参考cordova接口文档的描述merchantNo: res.data.pay_info.merchantNo, // 商户号version: res.data.pay_info.version, // 版本号messageId: res.data.pay_info.messageId, // 交易码security: res.data.pay_info.security, // 签名方法message: res.data.pay_info.message, // 请求报文明文信息signature: res.data.pay_info.signature, // 请求报文签名信息custBackFlag: "1"};window.c_plugins.merchantBridge.callPaymentControl(function (data) {// 下述内容为点击左上角<后执行if (data.isCancelPay === "1") {// 客户取消了支付payclose();paycloseAjax(res.data.order_num)// cancelPay(res.order_id); } else if(data.orderStatus === "1") {// 支付成功的回调方法,可写返回后逻辑paysuccess() } else {// 客户支付失败payerror()paycloseAjax(res.data.order_num)// 支付失败的回调方法 ,可写返回后逻辑} },function (err) {console.log('网络错误')}, setting)});
以上就是中国银行app调取支付的方法,遇到坑,可参考。
中国银行app,H5页面调取支付,并返回状态码。相关推荐
- 微信支付总结--小程序与H5页面微信支付
项目开发过程中,涉及到了微信支付功能,这里做一个详细的记录. 小程序和H5的后端代码是通用的,前端调用不同的代码实现,这里不是重点,会简单的给出相关的代码. 微信支付,官方给了开发文档,但是其中还是有 ...
- 页面HTTP状态查询“返回状态码:200 ”是什么意思?(网页响应状态码)
200是响应正常的意思,这个是服务器返回页面的响应头信息.里面bai的Transfer-Encoding: chunked,意思是使用了提前不可知数据长度的传输方式,需要浏览器继续读取响应,接下来才知 ...
- java 返回js_如何基于java或js获取URL返回状态码
这篇文章主要介绍了如何基于java或js获取URL返回状态码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参fgLAeaGAH考下 描述:使用java或者 ...
- CEF3:https 请求返回状态码canceled
CEF3:https 请求返回状态码canceled 客户端项目中浏览器内核用的cef3,最近在测试的时候 服务器配置的为https但是使用IP访问的.像如果 https服务器并没有完全安装正规的配置 ...
- ajax判断成功状态码,Ajax返回状态码200,成功函数不触发(Ajax returns status code 200, success function not triggering)...
Ajax返回状态码200,成功函数不触发(Ajax returns status code 200, success function not triggering) 关于这一点有很多话题,但没有一个 ...
- python-网页请求返回状态码429
在做读取本地cookies免登陆直接留言时,代码没有报错,但返回状态码为429,返回结果为:<Response [429]> 表示在短时间内,用户发送了太多的请求,超出了"频次限 ...
- 常见服务器返回状态码
常见服务器返回状态码 输入网址后会发生什么 1. 200 服务器正确处理请求,并将请求的资源放在响应体中返回给客户. 2. 204 若服务器拒绝对PUT.POST或者DELETE请求返回任何状态信息或 ...
- nginx 返回状态码详解
nginx 返回状态码详解 200 (成功) 服务器已成功处理了请求. 通常,这表示服务器提供了请求的网页. 201 (已创建) 请求成功并且服务器创建了新的资源. 202 (已接受) 服务器已接受请 ...
- 打开网站服务器显示403,网站服务器返回状态码403解决办法
网站服务器返回状态码403解决办法 [2020-09-05 06:10:52] 简介: HTTP状态码大全 2020-08-27 建站服务器 200 – 服务器成功返回网页 404 – 请求的网页不 ...
- HTTP请求返回状态码意义(详)
所有HTTP请求返回状态码意义 100 Continue 继续.客户端应继续其请求 101 Switching Protocols 切换协议.服务器根据客户端的请求切换协议.只能切换到更高级的协议,例 ...
最新文章
- 有赞分层自动化测试实践
- Science:细菌和古菌多重抗性系统抵御噬菌体和外来质粒
- python爬虫---从零开始(一)初识爬虫
- Apache Kafka-生产消费基础篇
- html数字变换插件,轻量级jquery数字动画插件
- 尚硅谷最新版JavaWeb全套教程,java web零基础入门完整版(一)
- 公司上网速度极慢(断网)解决思路_网络TS
- 《Java技术》第八次作业
- 《scikit-learn》决策树之回归树
- 卡尔曼滤波推导思路总结
- 关于中职计算机专业,关于中职学校计算机专业改革探讨
- 【课程总结】软件工程经济学简答题总结
- [计算机数值分析]拉格朗日插值公式
- Ubuntu18 Cuda10升级Cuda11+Cudnn8+TensorRT7.1+Opencv3
- 宏电7710与组态王通信配置
- vue xlsx.js获取单元格数据类型的hooks 单元格类型处理
- 诊断皮肤癌,人工智能比医生更出色
- UVa 10603 - Fille
- Linux 块设备层中的Multi-queue分析
- 高性能无线综合测试仪 无线电综合测试仪 ---TFN PM5100 100KHz-1GHz
热门文章
- python开源项目及示例代码(转)
- Web 前端学习之表单制作、网页超链接
- Windows调试工具入门-3-WinDbg内核调试配置
- matlab 读取.pgm,【数字图像处理】pbm/pgm/ppm图片的读写(Matlab)
- js 入门基础(一)
- 【架构设计】简单设计原则(Kent Beck)
- [动态规划-0] 前言-我的动态规划学习之路
- 汤普森算法_什么是汤普森采样(Thompson sampling)?
- php a标签加nofollow,Z-Blog给文章所有的站外a链接添加nofollow的方法
- Vulkan同步机制和图形-计算-图形转换的风险(一)