Payment

稿件来源: 互联网   撰稿作者: 匿名   发表日期: 2015-03-23   阅读次数: 850   查看权限: 游客查看

Payment模块管理支付功能,用于提供网页安全支付能力,支持通过Web接口进行支付操作。通过plus.payment可获取支付管理对象。

方法:

对象:

回调方法:

getChannels

获取支付通道

void plus.payment.getChannels( successCB, errorCB );

说明:

在进行支付操作前需获取终端支持的支付通道列表,用于提示用户进行选择。获取支付通道成功后通过successCB回调返回支持的所有通道列表,获取支付通道列表失败则通过errorCB回调返回。

参数:

  • successCB (ChannelsSuccessCallback) 可选 获取支付通道列表成功时的回调函数,用于返回终端支持的支付通道列表。
  • errorCB (PaymentErrorCallback) 可选 获取支付通道列表失败时的回调函数,用于返回错误信息。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Payment Example</title>
	<script type="text/javascript">
var channels=null;
// 监听plusready事件
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	plus.payment.getChannels( function(s){
		channels = s;
	}, function(e){
		alert( "获取支付通道列表失败:"+e.message );
	} );
}, false );
	</script>
	</head>
	<body>
	</body>
</html>

request

请求支付操作

void plus.payment.request( channel, statement, successCB, errorCB );

说明:

   调用指定的支付通道进行支付操作,其中statement包含支付操作的相关信息,支付模块将弹出支付界面供用户进行支付信息的输入确认操作。用户支付操作成功后通过successCB回调返回支付操作结果,支付操作失败则通过errorCB回调返回。

参数:

  • channel (PaymentChannel) 可选 指定支付操作的通道,通过getChannels接口获取。
  • statement (DOMString) 可选 支付订单信息,由支付通道定义的数据格式,通常是由业务服务器生成或向支付服务器获取,是经过加密的字符串信息。
  • successCB (PaymentSuccessCallback) 可选 获取支付通道列表成功时的回调函数,用于返回终端支持的支付通道列表。
  • errorCB (PaymentErrorCallback) 可选 获取支付通道列表失败时的回调函数,用于返回错误信息。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Payment Example</title>
	<script type="text/javascript">
var channels=null;
// 监听plusready事件
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	plus.payment.getChannels( function(s){
		channels = s;
	}, function(e){
		alert( "获取支付通道列表失败:"+e.message );
	} );
}, false );
// 请求支付操作
function requestPay( c ) {
	// 必须从业务服务器获取支付信息
	var statement = "...";
	plus.payment.request( c, statement, function(){
		alert( "支付操作成功!" );
	}, function(e){
		alert( "支付失败:"+e.message );
	} );
}
	</script>
	</head>
	<body>
	</body>
</html>

PaymentChannel

支付通道对象

interface plus.payment.PaymentChannel {
	attribute DOMString id;
	attribute DOMString description;
	attribute Boolean serviceReady;
	function void installService();
}

说明:

PaymentChannel对象表示特定的支付通道,用于向系统请求支付操作。

方法:

属性:

  • id:DOMString,只读属性,用于标识支付通道,如“alipay”表示支付宝、“wxpay”表示微信支付。
  • description:DOMString,只读属性,支付通道的描述信息,如“支付宝”、“微信”。
  • serviceReady:Boolean,只读属性,通常特定的支付通道依赖系统安装相关的服务,此属性用于标识其服务是否安装,如果没有安装则为false,否则为true。 若系统环境中没有安装相关的服务,则可能导致调用支付操作失败,这时可以调用installService方法进行安装。 注意:如果支付通道不需要依赖系统安装服务,则永远返回true。

installService

安装支付通道依赖的服务

void pay.installService();

说明:

对于某些支付通道,通常特定的支付通道依赖系统安装相关的服务,调用此方法将安装其依赖的支付服务。如支付宝,则在系统中安装支付宝客户端程序。

返回值:

平台支持:

Android : 2.2+

支付宝:支付操作可不依赖系统环境服务,此方法不做任何操作。当调用plus.payment.request请求支付操作时如果系统环境中已经安装“支付宝钱包”则会调用支付宝钱包进行支付,否则调用Webview窗口进行支付。

iOS : 5.0+

支付宝:支付操作可不依赖系统环境服务,此方法不做任何操作。当调用plus.payment.request请求支付操作时如果系统环境中已经安装“支付宝钱包”则会调用支付宝钱包进行支付,否则调用Webview窗口进行支付。

WP : 不支持

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Payment Example</title>
	<script type="text/javascript">
var channels=null;
// 监听plusready事件
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	plus.payment.getChannels( function(s){
		channels = s;
	}, function(e){
		alert( "获取支付通道列表失败:"+e.message );
	} );
}, false );
// 请求支付操作
function requestPay( c ) {
	// 必须从业务服务器获取支付信息
	var statement = "...";
	if ( !c.serviceReady ) {
		c.installService();
	}
	plus.payment.request( c, statement, function(){
		alert( "支付操作成功!" );
	}, function(e){
		alert( "支付失败:"+e.message );
	} );
}
	</script>
	</head>
	<body>
	</body>
</html>

PaymentResult

支付操作结果对象

interface plus.payment.PaymentResult {
	attribute PaymentChannel channel;
	attribute DOMString tradeno;
	attribute DOMString description;
	attribute DOMString url;
	attribute DOMString signature;
}

说明:

PaymentResult对象表示支付操作返回结果,用于确认支付操作成功。

属性:

  • channel:PaymentChannel,只读属性,用于发起支付操作的支付通道对象。
  • tradeno:String,只读属性,支付交易编号信息
  • description:Boolean,只读属性,交易描述信息
  • url:Boolean,只读属性,查找支付交易信息地址
  • signature:String,只读属性,用于向支付服务器查询支付订单信息。

ChannelsSuccessCallback

获取支付通道成功回调

void ChannelsSuccessCallback ( channels ) {
	// Get payment channels success code
}

说明:

当获取支付通道列表成功时的回调函数,用于返回终端支持的支付通道列表。

参数:

  • channels (Array) 可选 数组,系统支持的支付通道PaymentChannel列表

PaymentSuccessCallback

支付操作成功回调

void PaymentSuccessCallback ( result ) {
	// Payment success code
}

说明:

当支付操作成功时的回调函数,用于返回支付操作的成功信息。

参数:

PaymentErrorCallback

支付操作失败回调

void PaymentErrorCallback( error ) {
	// Payment error code
}

说明:

当支付操作失败时的回调函数,用于返回支付操作失败的错误信息。

参数:

  • error (DOMException) 可选 支付错误代码如下: 62000,客户端未安装支付通道依赖的服务; 62001,用户取消支付操作; 62002,此设备不支持支付; 62003,数据格式错误; 62004,支付账号状态错误; 62005,订单信息错误; 62006,支付操作内部错误; 62007,支付服务器错误; 62008,网络问题引起的错误; 62009,其它未定义的错误。

关键词: html5puls,Payment   编辑时间: 2015-03-23 23:20:21

  • 感到高兴

    0

    高兴
  • 感到支持

    0

    支持
  • 感到搞笑

    0

    搞笑
  • 感到不解

    0

    不解
  • 感到谎言

    0

    谎言
  • 感到枪稿

    0

    枪稿
  • 感到震惊

    0

    震惊
  • 感到无奈

    0

    无奈
  • 感到无聊

    0

    无聊
  • 感到反对

    0

    反对
  • 感到愤怒

    0

    愤怒
0%(0)
0%(0)
上一篇:Orientation
下一篇:Push
共有0 条评论 发言请遵守【相关规定

网友评论

会员头像
发 表同步腾讯微博    验证码:  点击更新请先登陆
  • 暂无评论
关闭模块文章图片 article Pictrue
  • 我的妈妈爸爸
  • 基于koa2+mysql+vue2.0+Element阳光内容管理系统
  • 代码覆盖率工具 Istanbul 入门教程
  • 全栈工程师的武器——MEAN
  • 9款超炫的 CSS3 复选框(Checkbox)
  • 微信开发在线翻译功能
  • CSS3那些不为人知的高级属性
  • 给easyui的datebox添加清空事件
  • flash写字效果
  • kendoUI系列教程之DropDownList下拉菜单
  • kendoUI系列教程之datetimepicker日期时间选择
  • kendoUI系列教程之datepicker日期选择
  • kendoUI系列教程之combobox下拉列表框
  • kendoUI系列教程之colorpicker
  • kendoUI系列教程之calendar日历表
  • kendoUI系列教程之autocomplete自动补齐