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 用户 ...
随机推荐
- ftp的本地用户搭建
前期的准备跟虚拟用户一样,就是配置文件不一样 修改配置文件 就是共享的都是自己的账号的家目录,然后启动服务就可以了 本地登陆的都是自己的账号密码 ftp本地的黑名单,
- Poj 1651 Multiplication Puzzle(区间dp)
Multiplication Puzzle Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10010 Accepted: ...
- [转载]Spring源码下载地址
转载自:http://blog.csdn.net/liuzheng2684/article/details/6534722,谢谢! 今天想下载一下spring的源代码,登录到Spring官网,傻眼了, ...
- c# http操作类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.N ...
- 我也说说Emacs吧(4) - 光标的移动
在说基本编辑命令之前,我们先加一个小tip,说说如何将函数和键绑定在一起. (define-key global-map [?\C-l] 'recenter-top-bottom) define-ke ...
- js之3D轮播图
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Eclipse远程调试Java程序
1. 在服务器上运行jar包时加入参数 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address= 2. 在Eclipse中操作 ...
- (android 地图实战开发)2 创建MapActivity,根据设备当前位置,显示地图
(android 地图实战开发)2 创建MapActivity,根据设备当前位置,显示地图 http://www.cnblogs.com/macroxu-1982/archive/2011/09/13 ...
- Spring 学习笔记(一)
# IOC, DI # ApplicationContext.xml 描述类之间的依赖注入关系 # 初始化Bean工厂的两种方式 ## ClassPathXmlApplicationContext # ...
- Java IO,io,文件操作,删除文件,删除文件夹,获取文件父级目录
Java IO,io,文件操作,删除文件,删除文件夹,获取文件父级目录 这里先简单的贴下常用的方法: File.separator //当前系统文件分隔符 File.pathSeparator // ...