java项目测试支付异步通知接口
个人资源与分享网站:http://xiaocaoshare.com/
1、需求说明
在进行支付的时候,总会有一个异步通知接口,他才是判断支付成功的重要依据。但是这个接口是第三方平台主动调用我们的接口,不能调试,只能通过打印日志来出来。但是有些公司接口文档说得不是很清楚,所以不知道他们返回的数据格式。
@RequestMapping("notifyUrl")
@SuppressWarnings({ "rawtypes" })
public void notifyUrl(HttpServletRequest request, HttpServletResponse response) {
log.info("----------->>>>YiBuToZhi------>>>>>");
Map<String, String> map = new HashMap<String, String>();
Enumeration paramNames = request.getParameterNames();
while (paramNames.hasMoreElements()) {
String paramName = (String) paramNames.nextElement();
String[] paramValues = request.getParameterValues(paramName);
if (paramValues.length == 1) {
if (paramValues[0].length() != 0) {
map.put(paramName, paramValues[0]);
}
}
}
// 打印map所有值
Set<Map.Entry<String, String>> set = map.entrySet();
log.info("===========================");
for (Map.Entry entry : set) {
log.info(entry.getKey() + ":" + entry.getValue());
}
log.info("END===========================");
// TODO
String rps = request.getParameter("rps");
log.info("rps={}", rps);
JSONObject rp = JSON.parseObject(rps);
String jsStatus = rp.get("status").toString();
log.info("status={}", jsStatus);
// 获取通商云订单号
String orderNo = JSON.parseObject(rp.getString("returnValue")).getString("orderNo");
log.info("orderNo={}", orderNo);
if (jsStatus.equals("OK")) {
TblOrder order = tblOrderService.findByOrderNo(orderNo);
if (order != null) {
order.setPayStatus((byte) 0);
tblOrderService.save(order);
tblContractPreService.paySuccess(order.getDeedsn(),order.getBillNo());
}
}
}
java项目测试支付异步通知接口相关推荐
- 微信接口java解密_java使用AES-256-ECB(PKCS7Padding)解密——微信支付退款通知接口指定解密方式...
1.场景 在做微信支付退款通知接口时,微信对通知的内容做了加密,并且指定用 AES256 解密,官方指定的解密方式如下: 2.导包 org.bouncycastle bcprov-jdk15on 1. ...
- java 微信支付异步回调接口
1.微信支付异步回调接口 @SuppressWarnings("static-access") @RequestMapping("callback") ...
- 微信回调接口java返回true_java 微信支付异步回调接口
1.微信支付异步回调接口 @SuppressWarnings("static-access") @RequestMapping("callback") @Res ...
- 微信公众号支付--3--接收微信支付异步通知
在JSAPI支付官方文档https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6里面,微信团队明确指出,在微信浏 ...
- java微信支付异步通知_Java中微信支付退款异步通知解码
微信所有的支付结果都是加密处理的,他和订单支付成功的异步通知不一样. 他的基本返回是: SUCCESS 我们需要对req_info解码才能看到退款的明文 解码后会得到明文: 解密步骤如下: (1)对加 ...
- 第三方支付异步通知的陷阱
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/j16421881/article/details/78703792 用户下单后调用第三方支付付款 ...
- 微信小程序开发-微信支付功能【WxMaService 获取openid,WxPayService建微信订单,接收微信支付异步通知回调方法,附有完整前后端代码】
前提:对小程序开发有一定的基础:小程序已发布使用,已开通微信支付,关联商户号. 微信小程序平台:小程序平台 微信开发者文档:开发者文档 微信小程序支付API 地址:微信支付文档地址 微信支付平台:微信 ...
- 支付宝支付 - 异步通知与同步通知
/*** @Description: 支付成功后的支付宝异步通知*/ @RequestMapping(value="/alipay") public String alipay(H ...
- 记一起因证书引发的支付宝支付异步通知接收不到的事故
目录 1.事故还原 2.排查过程 3.疑问 4.支付宝技术客服解答 5.解决方法 1.事故还原 客服反馈有用户使用支付宝支付后,订单状态没有改变. 2.排查过程 查看日志,发现没有收到异步通知. 排查 ...
最新文章
- 如何实现一个定时的任务,并且可以自己停止
- JVM内存模型、逃逸分析以及发生GC的时机
- linux申请cache和释放cache,Linux--- 手工释放系统cache
- 2021.01.04 第 1 个工作日反思
- 每日一课(12/75)操作数的寻址方式
- 使用 classList API
- vector容器易错知识点集锦
- 蓝桥杯官网练习系统基础练习(八)
- 如何在python中实现capl语言里的回调函数
- PCWorld评出的2010年世界杀毒软件排名
- P1179 数字统计
- MC2D v0.0.6 Source Code
- CF1313C2 Skyscrapers (hard version) -单调栈优化dp
- Linux 火狐 flash更新
- 春风吹又生(1年工作经验感悟)
- 推荐几个编程学习网站
- password unchanged Authentication token manipulation error
- 使用Git克隆vue-element-admin项目报错的解决方案
- 传统图像去噪方法(三)之非局部均值去噪(NLM)
- C++11 文件读写(vs2019 安装配置boost库)
热门文章
- 2017-2018 ACM-ICPC, NEERC, Southern Subregional Contest
- WildFly评估之WildFly的模块化系统
- 四个Webix实例:生成多种类型的JavaScript列表
- docker 数据共享,数据复制
- **使用 Git Hook 实现网站的自动部署
- Oracle存储过程返回游标实例详解
- DHTML中style的display和visibility属性
- 1196: 数星星(二)(结构体专题)_福利:最新导数6大专题!高分段提分有困扰?听北大状元漫谈提分...
- 即时编译和提前编译_即时编译说明
- 学Python有哪些优势