重复收到微信支付异步通知

微信支付的机制需要我们接收微信的异步通知,通过内网穿透工具注册域名后可以在本地接收到微信发来的异步通知。

wxPayConfig.setNotifyUrl("https://xzk.mynatapp.cc/pay/notify/");//接收异步通知

在控制层接收微信发来的异步通知

    @PostMapping("/notify")@ResponseBody//因为是一组数据所以需要用body接收public String asyncNotify(@RequestBody String notifyData){return payService.asyncNotify(notifyData);}

在service层打印日志

@Overridepublic void asyncNotify(String notifyData) {log.info("payResponse={}" ,payResponse);}

1.重复接收通知

2.解决办法

微信开发具体描述如下,需要在接收到异步通知后返回一串xml格式的信息

 需要先将service层接收异步通知的接口改为String返回值的

public String asyncNotify(String notifyData) {PayResponse payResponse = bestPayService.asyncNotify(notifyData);log.info("payResponse={}" ,payResponse);//剔除重复通知return "<xml>\n" +"  <return_code><![CDATA[SUCCESS]]></return_code>\n" +"  <return_msg><![CDATA[OK]]></return_msg>\n" +"</xml>";}

然后再controller层调用这个接口时就会返回给微信一串xml的参数。

用postman模拟微信返回异步通知(这个xml信息可以在接收异步通知的时候打个断点,就可以拿到了)

<xml><appid><![CDATA[wxd898fcb01713c658]]></appid>
<bank_type><![CDATA[OTHERS]]></bank_type>
<cash_fee><![CDATA[1]]></cash_fee>
<fee_type><![CDATA[CNY]]></fee_type>
<is_subscribe><![CDATA[N]]></is_subscribe>
<mch_id><![CDATA[1483469312]]></mch_id>
<nonce_str><![CDATA[H1n47AffiY0Wg3WY]]></nonce_str>
<openid><![CDATA[oTgZpwaXTs2GzvkwMNDzbWIcrqjA]]></openid>
<out_trade_no><![CDATA[235476556759324]]></out_trade_no>
<result_code><![CDATA[SUCCESS]]></result_code>
<return_code><![CDATA[SUCCESS]]></return_code>
<sign><![CDATA[D749E8D9001EB9C95D3824A0EFEE1C1F]]></sign>
<time_end><![CDATA[20220519211721]]></time_end>
<total_fee>1</total_fee>
<trade_type><![CDATA[NATIVE]]></trade_type>
<transaction_id><![CDATA[4200001494202205192595826014]]></transaction_id>
</xml>

 post后台返回数据如下

 在微信支付中测试后也是只会返回一次异步通知。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/31213.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

钱扣了,订单却是未支付,用户炸了——聊聊如何防止支付掉单

大家好&#xff0c;我是老三&#xff0c;之前在 如何防止订单重复支付 里和大家聊过掉单导致的重复支付&#xff0c;这篇文章&#xff0c;我们来聊聊&#xff0c;如何防止掉单。 好好的支付&#xff0c;怎么就掉单了&#xff1f; 我听说过下单、买单、脱单……掉单是什么东西…

微信支付最佳实践-服务端如何防止重复支付

DUBBO之家 2023-01-10 14:01 发表于北京 点击上方 "DUBBO之家" 关注公众号 终身学习 技术干货 及时送达 往期回顾 这次彻底读透 Redis Java回调机制 概述 如图是一个简化的下单流程&#xff0c;首先是提交订单&#xff0c;然后是支付。支付的话&#xff0c;一…

如何防止订单重复支付

想必大家对在线支付都不陌生&#xff0c;今天和大家聊聊如何防止订单重复支付。 看看订单支付流程 我们来看看&#xff0c;电商订单支付的简要流程&#xff1a; 订单钱包支付流程 从下单/计算开始&#xff1a; 下单/结算&#xff1a;这一步虽然不是直接的支付起点&#xff0c;但…

重复付款异常到底该如何解决?一笔订单,但是误付了两笔钱!

重复付款异常 异常场景 重复付款异常一般常见于网银支付&#xff0c;微信支付&#xff0c;支付宝等这类需要跳转到一个支付网关页&#xff08;网银支付&#xff09;&#xff0c;或者跳转到钱包 APP(支付宝、微信)&#xff0c;从而异步完成扣款的支付场景。 这种支付场景下&a…

《GPT-4 ,通用人工智能的火花》论文内容精选与翻译

原文&#xff1a; 原文地址&#xff1a;Arduino中文社区 引言&#xff1a; 《通用人工智能的火花&#xff1a;GPT-4早期实验》是3月最重要的一篇论文&#xff0c;引起了广泛的关注和讨论&#xff0c;但是论文长达 154页&#xff0c;中文版本还无人翻译。 本文挑选了论文中的…

ICLR 2023 Oral | Batch Norm层等暴露TTA短板,开放环境下解决方案来了

关注并星标 从此不迷路 计算机视觉研究院 公众号ID&#xff5c;ComputerVisionGzq 学习群&#xff5c;扫码在主页获取加入方式 计算机视觉研究院专栏 作者&#xff1a;Edison_G 测试时自适应&#xff08;Test-Time Adaptation, TTA&#xff09;方法在测试阶段指导模型进行快速无…

TensorRT量化第二课:对称量化与非对称量化

目录 模型量化原理注意事项一、2023/3/30更新前言1.引出问题1.1 问题1.2 代码实现1.2.1 初始化输入数组1.2.2 Scale计算1.2.3 量化截断1.2.4 反量化1.2.5 完整代码 2. 非对称量化2.1 动态范围量化2.2 代码实现2.3 原理分析2.3.1 动态量化范围2.3.2 偏移量Z2.3.3 图例分析 3.对称…

领先的项目协作管理软件OpenProject

本文软件由网友 不长到一百四誓不改名 推荐&#xff1b; 什么是 OpenProject &#xff1f; OpenProject 是一个开源、基于 Web 的项目管理系统&#xff0c;提供了免费的社区版和收费的企业版。OpenProject 拥有完善的文档&#xff0c;API&#xff0c;及丰富的功能&#xff0c;可…

当我问ChatGPT,知识图谱在工程项目管理中有什么用

导读 知识图谱&#xff08;Knowledge Graph&#xff09;&#xff0c;在图书情报界称为知识域可视化或知识领域映射地图&#xff0c;是显示知识发展进程与结构关系的一系列各种不同的图形&#xff0c;用可视化技术描述知识资源及其载体&#xff0c;挖掘、分析、构建、绘制和显示…

私藏多年的vscode插件分享,让你成为一个高效开发的程序员

vscode插件就像手机里的应用商店一样&#xff0c;可以让我们在高效代码开发、为了美观的代码格式&#xff0c;可以更好的高逼格分享代码等系列功能&#xff0c;本文特意整理了艾编程老师多年来使用vscode的经验&#xff0c;整理的插件集希望对您有帮助&#xff01; 1、简体中文…

vscode插件(个人正在用的)

插件目录 any-ruleAuto Close TagAuto Rename Tagbackground-coverChinese (Simplified) (简体中文) Language Pack for Visual Studio CodeDebugger for JavaError LensESLintExtension Pack for JavaImage previewIntelliCodeIntelliCode API Usage ExamplesLanguage Support…

程序员请收好:10个非常有用的 Visual Studio Code 插件!

点击上方“小白学视觉”&#xff0c;选择加"星标"或“置顶” 重磅干货&#xff0c;第一时间送达 一个插件列表&#xff0c;可以让你的程序员生活变得轻松许多。 以下为译文&#xff1a; 无论你是经验丰富的开发人员还是刚刚开始第一份工作的初级开发人员&#xff0c;…

VSCode好用的插件

文章の目录 1、Chinese (Simplified) (简体中文) Language Pack&#xff08;汉化vscode 必备&#xff09;2、Bracket Pair Colorizer&#xff08;给代码中的括号添加亮色&#xff0c;便于区分&#xff09;3、Auto Close Tag&#xff08;自动补全标签&#xff0c;必备&#xff0…

30个实用VSCode 插件,让你的开发效率倍增!

1. Image preview 通过此插件&#xff0c;当鼠标悬浮在图片的链接上时&#xff0c;可以实时预览该图片&#xff0c;除此之外&#xff0c;还可以看到图片的大小和分辨率。 2. Auto Rename Tag 使用该插件&#xff0c;可以在重命名一个 HTML 标签时&#xff0c;自动重命名 HTML…

跟我做一个可以聊天的 Visual Studio Code 插件

你每天有在用 Visual Studio Code 吗&#xff1f; 根据面向程序开发人员的时间跟踪工具 WakeTime 统计 &#xff0c; 在 2020 年全球开发者使用 Visual Studio Code 的时间合共 1800 万小时 。这是一个非常惊人的数字 。 你有想过开发一个 Visual Studio Code 插件吗 &#xff…

vscode常用的9个插件,推荐给你们

1. Settings Sync 开发必备神器之一&#xff01;可以帮助你在不同的设备之间同步vscode所有的配置、插件&#xff01;&#xff01;! 虽然配置有好几个步骤&#xff0c;但是一旦配置好了之后使用非常的方便&#xff0c;只需要记住快速上传和快速下载的快捷键即可。甚至你可以选…

VS Code实用插件推荐

一、外观优化插件 1.1 Chinese 中文插件包&#xff0c;看起来清晰明了&#xff0c;安装完重启vs即可生效&#xff1b; 1.2 Better Comments 一款美化注释的插件&#xff0c;可以根据不同种类的注释&#xff0c;显示不同的颜色&#xff0c;一目了然。还可以通过扩展配置文件…

VSCode插件推荐

1. VSCode汉化包插件 &#xff1a;Chinese (Simplified) (简体中文) Language VSCode汉化包&#xff0c;原始默认是英文的所以我们需要下一个中文插件。 2. VSCode自动补全标签 &#xff1a;Auto Close Tag Auto Close Tag 对Html或Xml文件自动创建结束标签&#xff1b; 如在…

VScode神仙插件,程序员必备

前言 Visual Studio Code(VS Code)是微软2015年推出的一个轻量但功能强大的源代码编辑器&#xff0c;基于 Electron 开发&#xff0c;支持 Windows、Linux 和 macOS 操作系统。它内置了对JavaScript&#xff0c;TypeScript和Node.js的支持并且具有丰富的其它语言和扩展的支持&a…

VSCode提高代码开发效率插件:(一)差异对比插件

写代码经常会用到代码对比的功能&#xff0c;以前常用独立的软件Merge&#xff0c;Vscode中也有类似功能的插件。之前开发单片机一直用的Keil&#xff0c;但是用Keil编译去掉BroseInformation速度提上来了但是没法函数跳转了。 Vscode可以解决这个问题了。SourceInsight之类的代…