微信APP支付服务端开发Java版(一)
一、准备工作
去微信开发者中心下载(扫码支付,里面的大部分代码是可以用的)
https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=11_1

选择UTF-8的版本copy到你的项目里面
找到Configure.java的类修改成public static String PAY_API = "https://api.mch.weixin.qq.com/pay/unifiedorder";
下面正式进入代码部分
//初始化配置信息
WXPay.initSDKConfiguration(
"MsfsfsafsfsfdsafsfC",//商品平台上的密码
"wxb21618828c323242",//appid
"1234235",//商户ID
"",
"d:/apiclient_cert.p12",//证书,在商户平台上下载
//"/Users/Desktop/windowsserver/apiclient_cert.p12",
"3122421501"); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
Date date1 = new Date();
long datetime = date1.getTime()+3600*1000;
String generateTime = dateFormat.format(date1);//yyyyMMddHHmmss 订单生成时间
String failureTime = dateFormat.format(new Date(datetime));//yyyyMMddHHmmss 失效时间
ScanPayReqData reqData = new ScanPayReqData(shopOrder.getHdbt(), "旅游商品",
shopOrder.getOrdercode(), priec,
"", "192.168.0.1",
generateTime,
failureTime,
"",
"http://dsds/notify/WxPayNotify.action",//收到通知地址
"APP");
String resdata= WXPay.requestScanPayService(reqData);
//签名验证
Map<String,Object> map = XMLParser.getMapFromXML(resdata);
if(Signature.checkIsSignValidFromResponseString(resdata)){ if("SUCCESS".equals(map.get("return_code"))&&"SUCCESS".equals(map.get("result_code"))){
jsonmap.put("appid", Configure.getAppid());
jsonmap.put("prepayid", map.get("prepay_id").toString());
jsonmap.put("package", "Sign=WXPay");
jsonmap.put("partnerid", Configure.getMchid());
jsonmap.put("noncestr", RandomStringGenerator.getRandomStringByLength(32));
jsonmap.put("timestamp", new Date().getTime()/1000+"");
jsonmap.put("sign", Signature.getSign(jsonmap));
//将jsonmap返回给APP他们用这些参数就可以完成调起微信支付进行支付了 } }else{
System.out.println("签名验证失败");
jsonmapT.put("result", "-1");
jsonmapT.put("message", "签名验证失败");
}
如有不明白的地方请留言。一些请求参数和返回的参数,参考官网文档
微信APP支付服务端开发Java版(一)的更多相关文章
- 支付宝app支付服务端流程
支付宝APP支付服务端详解 前面接了微信支付,相比微信支付,支付宝APP支付提供了支付封装类,下面将实现支付宝APP支付.订单查询.支付结果异步通知.APP支付申请参数说明,以及服务端返回APP端发起 ...
- .net 微信APP支付接口的开发流程以及坑
流程 申请APP的微信支付 申请成功之后得到APPID 商户号 以及自己设置商户号的支付密码 这时就可以开发接口了 微信APP支付API:https://pay.weixin.qq.com/wiki/ ...
- 微信app支付(android端+java后台)
本文讲解使用微信支付接口完成在android开发的原生态app中完成微信支付功能, 文章具体讲解了前端android如何集成微信支付功能以及后台如何组装前端需要支付信息, 话不多话, 具体看文章内容吧 ...
- 支付宝APP支付后台参数生成Java版(一)
一.支付参数组装: String[] parameters={ "service=\"mobile.securitypay.pay\"",//固定值 " ...
- 支付宝H5、APP支付服务端的区别(php)
php支付宝H5和APP支付1.准备工作需要前往 蚂蚁金服开放平台申请https://openhome.alipay.com/developmentDocument.htm 2.大致流程1.用户添加商 ...
- 微信支付-微信公众号支付,微信H5支付,微信APP支付,微信扫码支付
在支付前,如果使用第三方MVC框架,则使用重写模式,服务器也需要配置该项 if (!-e $request_filename){ rewrite ^/(.*)$ /index.php/$ last; ...
- 微信app支付android客户端以及.net服务端实现
由于公司运营需要,需要在客户端(android/ios)增加微信以及支付宝支付,在调用微信app支付时遇到一些问题,也算是一些踩过的坑,记录下来 ,希望能对.net开发者服务端网站更快的集成微信app ...
- Android版-微信APP支付
首发地址: Android版-微信APP支付 欢迎留言.转发 微信极速开发系列文章(微信支付.授权获取用户信息等):点击这里 目录 1.注册账号.开发者认证 2.添加应用 3.申请微信支付 4.技术开 ...
- 支付宝APP支付IOS手机端java后台版
版权声明:http://blog.csdn.net/u012131769/article/details/76639527#t8 转载:http://blog.csdn.net/u012131769/ ...
随机推荐
- cocos学习笔记:快速上手
cc.Class({ //奇怪的语法风格,cc.class, extends: cc.Component, //扩展自cc.Component properties: { //类的属性设置 jumpH ...
- mac下安装 xampp 无法启动apache (转,留用)
1.查看端口是否被占用 sudo lsof -i -n 2.用终端运行xampp,查看具体的错误 sudo su /Applications/XAMPP/xamppfiles/xampp star ...
- Linux时间设置及同步
Linux系统安装时选择的UTC时间是国际标准时间,而中国处于UTC+8时区,因此安装系统时不要选择UTC时区. 还有就是Linux有两个时钟: 1.Bios时钟及硬件时间 2.Kernel时钟及系统 ...
- Too Many Connections: How to Increase the MySQL Connection Count To Avoid This Problem
1.问题描述 在启动使用mysql数据库的项目时,遇到一个报错,如下: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConn ...
- laravel 实现上传 excel
//导入电话号码 public function postTel(){ set_time_limit(0); ini_set('memory_limit','1024M'); $params = In ...
- [官方软件] Easy Sysprep v4.3.29.602 【系统封装部署利器】(2016.01.22)--skyfree大神
[官方软件] Easy Sysprep v4.3.29.602 [系统封装部署利器](2016.01.22) Skyfree 发表于 2016-1-22 13:55:55 https://www.it ...
- iOS适配https详解
马上就要元旦了,网上流传元旦之后苹果会对所有的app进行https的验证,据说会拒绝所有没有使用https的app.但是后来又听说是我们开发者误解了,元旦过后还是会支持http,不过开发者需要说明为什 ...
- centos下安装yaf框架
安装好php环境之后 安装扩展包 $yum install php-devel /usr/bin/ 就会出现phpize工具包 下载yaf-2.2.8.gz源文件,解压后,进入源文件 phpize [ ...
- iptables 端口转发
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
- 张艾迪(创始人):Be.Time+Cr.Idear的创新理念
The World No.1 Girl :Eidyzhang The World No.1 Internet Girl :Eidyzhang AOOOiA.global Founder :Eidyzh ...