MUI 支付宝支付接入
沙箱测试地址:https://openhome.alipay.com/platform/appDaily.htm
1资源下载地址:https://docs.open.alipay.com/54/106370/ --下载手机网页支付demo .取出alipay-sdk-java20170307171631.jar 放入工程
app支付各接口说明:https://docs.open.alipay.com/api_1/alipay.trade.refund
2服务端配置:
########支付宝支付配置###########
#商户appid
zfb.APPID =
#私钥 pkcs8格式的
zfb.RSA_PRIVATE_KEY =
#服务器异步通知页面路径 需http://或者https://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问
zfb.notify_url =
#页面跳转同步通知页面路径 需http://或者https://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问 商户可以自定义同步跳转地址
zfb.return_url =
#请求网关地址
zfb.URL = https://openapi.alipaydev.com/gateway.do
#编码
zfb.CHARSET = UTF-8
#返回格式
zfb.FORMAT = json
#支付宝公钥
zfb.ALIPAY_PUBLIC_KEY =
#RSA2
zfb.SIGNTYPE = RSA2 ########支付宝支付配置###########
3服务端获取订单: 参考地址:https://docs.open.alipay.com/54/106370/ 其他退款,查看,下载对账单等参考地址:https://docs.open.alipay.com/204/105297/
String out_trade_no = request.getParameter("orderId");
String subject = request.getParameter("orderName");
String total_amount=request.getParameter("ordreMoney");
System.out.println("订单号ID:"+out_trade_no);
/* // 商品描述,可空
String body = "没有描述";
// 超时时间 可空
String timeout_express="2000m";
// 销售产品码 必填
String product_code="QUICK_WAP_PAY";*/
System.out.println(zfb.toString());
AlipayClient alipayClient = new DefaultAlipayClient(zfb.getURL(),
zfb.getAPPID(),
zfb.getRSA_PRIVATE_KEY(),
zfb.getFORMAT(),
zfb.getCHARSET(),
zfb.getALIPAY_PUBLIC_KEY(),
zfb.getSIGNTYPE());
AlipayTradeAppPayRequest alipay_request = new AlipayTradeAppPayRequest();
//SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方式(model和biz_content同时存在的情况下取biz_content)。
AlipayTradeAppPayModel model = new AlipayTradeAppPayModel();
model.setBody("我是测试数据");
model.setSubject("App支付测试Java");
model.setOutTradeNo("6786785675674564");
model.setTimeoutExpress("30m");
model.setTotalAmount("0.01");
model.setProductCode("QUICK_MSECURITY_PAY");
alipay_request.setBizModel(model);
alipay_request.setNotifyUrl("商户外网可以访问的异步地址");
try {
//这里和普通的接口调用不同,使用的是sdkExecute
AlipayTradeAppPayResponse response = alipayClient.sdkExecute(alipay_request);
String order = response.getBody();
System.out.println("订单");
System.out.println(order);//就是orderString 可以直接给客户端请求,无需再做处理。
return new ReturnVO(order);
} catch (AlipayApiException e) {
e.printStackTrace();
}
return new ReturnVO(false);
4 mui端调用支付宝支付sdk配置及代码 参考地址:http://ask.dcloud.net.cn/article/71配置:
manifes.json增加
"permissions": >>
"Payment":{
"description": "支付宝支付"
},
"plus">>"distribute">>
{"plugins":{"payment":{"alipay":{"description":"支付宝支付","scheme":""}}},
代码:
mui.init({
swipeBack:true //启用右滑关闭功能
});
//获取支付通道
var channel=null;
function plusReady(){
// 获取支付通道
plus.payment.getChannels(function(channels){
channel=channels[0];
},function(e){
alert("获取支付通道失败:"+e.message);
});
}
document.addEventListener('plusready',plusReady,false);
var ALIPAYSERVER='https://openapi.alipaydev.com/gateway.do?';
var WXPAYSERVER='http://demo.dcloud.net.cn/helloh5/payment/wxpay.php?total=';
var PAYSERVER='';
//发起支付请求
function pay(id){
// 从服务器请求支付订单
if(id=='alipay'){
PAYSERVER=ALIPAYSERVER;
}else if(id=='wxpay'){
PAYSERVER=WXPAYSERVER;
}else{
plus.nativeUI.alert("不支持此支付通道!",null,"捐赠");
return;
}
var xhr=new XMLHttpRequest();
xhr.onreadystatechange=function(){
switch(xhr.readyState){
case 4:
if(xhr.status==200){
plus.payment.request(channel,xhr.responseText,function(result){
plus.nativeUI.alert("支付成功!",function(){
back();
});
},function(error){
plus.nativeUI.alert("支付失败:" + error.code);
});
}else{
alert("获取订单信息失败!");
}
break;
default:
break;
}
}
xhr.open('GET',PAYSERVER);
xhr.send();
}
//添加列表项的点击事件
mui('.mui-input-group').on('tap',"#pay_sub", function(e) {
console.log(bathpath+'/zfb/pay');
$.getJSON({
url:bathpath+'/zfb/pay',
type: 'post',
data:{
orderId:'999999999',
orderName:'测试商品1',
ordreMoney:'0.01'
}
}).done(function (result) {
console.log(result.content);
ALIPAYSERVER=ALIPAYSERVER+result.content;
pay('alipay');
}).fail(function (e) {
console.error(e.statusText)
}).always(function () {
});
});
MUI 支付宝支付接入的更多相关文章
- APP支付宝支付接入
1.app支付简介 买家可以在手机,掌上电脑等无线设备的应用程序内,通过支付宝(支付宝app或网页版支付宝)付款购买商品,且资金实行实时到账. 2.申请条件 1.申请前必须拥有经过实名认证的支付宝账户 ...
- (转载)Android支付宝支付封装代码
Android支付宝支付封装代码 投稿:lijiao 字体:[增加 减小] 类型:转载 时间:2015-12-22我要评论 这篇文章主要介绍了Android支付宝支付封装代码,Android支付的时候 ...
- 移动应用端的支付宝支付php开发流程
1.https://openhome.alipay.com/ 支付宝开放平台并创建应用,审核通过后并签约app支付拿到pid 2.按照官方文档用 [RSA签名验签工具.bat]生成应用公钥和私钥 3. ...
- MUI 微信 和支付宝支付 (前台代码)
<!-- 校园公告详情界面 用于显示校园公告的详情信息 在校园公告界面点击某一条目后 进入本界面查看详情 --> <!DOCTYPE html> <html> &l ...
- Android支付接入(一):支付宝
原地址:http://blog.csdn.net/simdanfeg/article/details/9011603 转载之前我想深深地感谢屌丝哥 相信相同过App获取利润的都会需要接入计费SDK,下 ...
- mui实现支付宝支付功能
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>H ...
- thinkphp5.0 微信公众号接入支付宝支付
---恢复内容开始--- 真是无力吐槽这个需求了,想骂客户,好端端的非要在微信公众号接入支付宝,都知道微信公众号是拒绝支付宝的,屏蔽了支付宝,所以在微信公众号接入支付宝的话就必须手动复制链接跳出微信内 ...
- 使用Tornado异步接入第三方(支付宝)支付
目前国内比较流行的第三方支付主要有支付宝和微信支付,博主最近研究了下如何用Python接入支付宝支付,这里我以Tornado作为web框架,接入支付宝构造支付接口. 使用Tornado异步接入支付宝支 ...
- Java第三方支付接入案例(支付宝)
开源项目链接 Kitty 开源权限管理系统 项目地址:https://gitee.com/liuge1988/kitty 演示地址:http://139.196.87.48:9002/kitty 用户 ...
随机推荐
- 高射炮打蚊子丨在VS 2017里用C语言写经典的冒泡排序
上一期<高射炮打蚊子丨用Visual Studio 2017写最初级的C语言程序>中,我们用Visual Studio “全宇宙最强IDE”这门大炮,打了“C语言写Hello World ...
- Visual Studio 2017再现C语言经典例题(一)
1.编写一个程序,输入a.b.c这3个值,输出其中最大者. 2.将“China”译成密码.密码规律:用原来的字母后面第4个字母代替原来的字母.例如,字母A后面第4个字母是E,用E代替A,因此,Chin ...
- linux下c语言源码编译
一.源码编译过程 源码 ---> 预处理 ---> 编译 ---> 汇编 ---> 链接 --->执行 我们可以把它分为三部分来完成: ./configure ...
- webpack 事件触发 按需加载
比较易懂, 方法简单 var util_sync = require('./util-sync.js') alert(util_sync.data) document.getElementById(& ...
- About libcurl and cURL in PHP
今天在学习php时遇到要调用curl 库函数对特定url字符串进行访问操作,需要自己写一个方法进行调用,之前在linux系统中也有用到cURL 命令行工具执行对相关资源的获取,在wiki上找到了如下的 ...
- Java基础拾遗(一)
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76358391冷血之心的博客) 马上就要秋招了,新的一轮笔试面试马上 ...
- LNMP架构基础搭建
LNMP架构+wordpress博客 环境: centos6.7 2.6.32-573.el6.x86_64 nginx-1.6.3 mysql-5.5.49 php-5.3.27 wordpress ...
- [Math]Pi(2)
[Math]Pi(2) 接着前一篇,[Math]Pi(1),下面继续介绍Leonard Euler求Pi的第二个公式. 其实这个公式也是来源一个古老的问题,Basel problem . 证法1.麦克 ...
- nodejs调用百度统计api摆脱人肉数据统计
var http = require("https"); var url = require('url'); var postData = JSON.stringify( { &q ...
- 自动化测试入门指南(3)-- 入门demo
按照 自动化测试入门指南(2)-- 环境搭建搭建好环境后,我们继续一步步实现一个简单的入门例子 Step0. 安装Firefox浏览器(http://pan.baidu.com/s/1c00bw8g中 ...