微信支付-接收返回通知结果
2019独角兽企业重金招聘Python工程师标准>>>
前面我们说了统一下单(公众号同样适用只是参数有细微的差别,一定要注意)
接着说一下微信支付成功之后支付结果通用通知
该链接是通过【统一下单API】中提交的参数notify_url设置,如果链接无法访问,商户将无法接收到微信通知。
通知url必须为直接可访问的url,不能携带参数。示例:notify_url:“https://xxx.com”sn
[java] view plain copy
- InputStream inStream = request.getInputStream();
- ByteArrayOutputStream outSteam = new ByteArrayOutputStream();
- byte[] buffer = new byte[1024];
- int len = 0;
- while ((len = inStream.read(buffer)) != -1) {
- outSteam.write(buffer, 0, len);
- }
- System.out.println("~~~~~~~~~~~~~~~~付款成功~~~~~~~~~");
- outSteam.close();
- inStream.close();
- String result = new String(outSteam.toByteArray(), "utf-8");// 获取微信调用我们notify_url的返回信息
- Map<Object, Object> map = PayCommonUtil.doXMLParse(result);
- if (map.get("result_code").toString().equalsIgnoreCase("SUCCESS")) {
- t;pre name="code" class="java"> //验证签名,在网上看到很多人都不去验证签名,这种做法,一般情况下不会有问题,但是。。。。。,多的我就不说了
- <img src="https://img-blog.csdnimg.cn/2022010705145735250.png" alt="" />
- if (verifyWeixinNotify(map)) {
- //订单处理
- response.getWriter().write(PayCommonUtil.setXML("SUCCESS", "OK")); // 告诉微信服务器,我收到信息了,不要在调用回调action了
- }
- }
- bsp;
[java] view plain copy
- public boolean verifyWeixinNotify(Map<Object, Object> map) {
- SortedMap<String, Object> parameterMap = new TreeMap<String, Object>();
- String sign = (String) map.get("sign");
- for (Object keyValue : map.keySet()) {
- if(!keyValue.toString().equals("sign")){
- parameterMap.put(keyValue.toString(), map.get(keyValue));
- }
- }
- String createSign = PayCommonUtil.createSign("UTF-8", parameterMap);
- if(createSign.equals(sign)){
- return true;
- }else{
- return false;
- }
- }
到此通知也说完了,接下的一篇博文来我们说说退款接口,今天就不写了,下班了,明天再接着说
转载于:https://my.oschina.net/u/2380961/blog/743141
微信支付-接收返回通知结果相关推荐
- 微信支付通知 php,微信支付开发交易通知实例
一.交易通知 用户在成功完成支付后,微信后台通知(POST)商户服务器(notify_url)支付结果.商户可以使用notify_url的通知结果进行个性化页面的展示. 对后台通知交互时,如果微信收到 ...
- 微信支付 php编程,PHP编程:微信支付开发交易通知实例
<PHP编程:微信支付开发交易通知实例>要点: 本文介绍了PHP编程:微信支付开发交易通知实例,希望对您有用.如果有疑问,可以联系我们. 一.交易通知 用户在成功完成支付后,微信后台通知( ...
- 微信支付退款结果通知解密 base64_decode / md5 / AES
转自 https://jishu8.net/tag/wxpay 微信支付退款结果通知解密步骤如下: 第一步,对商户密钥key进行MD5加密,得到32位小写加密串StringA key设置路径:微信商户 ...
- php苹果app微信支付 无法返回,微信支付,php_微信支付APP返回-1怎么解决,微信支付,php,移动app - phpStudy...
微信支付APP返回-1怎么解决 开发文档上面-1"可能的原因:签名错误.未注册APPID.项目设置APPID不正确.注册的APPID与设置的不匹配.其他异常等.",但是我检查过没问 ...
- 微信支付退款结果通知(回调) AES-256-ECB解密 代码
微信支付中的退款后,微信那边需要回调.恶心的是需要我们解密. 给大家我的代码看看. 每个类都有一个主方法供大家测试用. Base64Util package com.xz.app.util;impor ...
- 微信支付回调重复通知,正确的响应
好多人遇到这个问题,微信异步请求notify_url,我们接收到通知了,并且给微信返回下面的xml了,但是微信还是不停的给我们发通知.处理完业务后,新增如下代码: 微信文档:https://pay.w ...
- java微信支付异步通知_Java中微信支付退款异步通知解码
微信所有的支付结果都是加密处理的,他和订单支付成功的异步通知不一样. 他的基本返回是: SUCCESS 我们需要对req_info解码才能看到退款的明文 解码后会得到明文: 解密步骤如下: (1)对加 ...
- android微信支付后返回第三方页面,微信支付后怎么返回指定界面 ios开发
满意答案 timerise 2015.09.07 采纳率:40% 等级:10 已帮助:671人 在以下两个方法中实现(AppDelegate) //弃用的返回 - (BOOL)applicati ...
- 微信公众号支付--3--接收微信支付异步通知
在JSAPI支付官方文档https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6里面,微信团队明确指出,在微信浏 ...
最新文章
- 创建DLL动态链接库——声明导出法
- 《父亲家书》选:给初为人师的儿子
- 后缀自动机 ---- P3804 【模板】后缀自动机(求每个等价类最长串的出现次数)
- Java的迭代器—— Iterator
- Nginx动静分离-tomcat
- 约瑟夫环问题之猴子选大王
- 自动点名系统c语言,用C语言编写一个随机点名系统
- MD文件图片base64自动编码
- 4918字,详解商品系统的存储架构设计
- 形容女人的词语大全(坏与好)
- SASS用法指南(转)
- 微信小程序开发的坑---tabBar
- 谁负责本单位的各部门计算机,关于加强计算机校园网管理的若干认识
- Java基础之CAS算法
- 特斯拉灯光秀指南「GitHub 热点速览 v.22.01」
- Barsetto百胜图BAV02自助咖啡机——创新咖啡体验
- Eclipse+Java+Swing实现电子商城
- android 清除通知栏,android startForeground去除通知栏
- 三剑客----awk
- java编写连接数据库代码