首先我们需要到微信后台配置回调的域名信息 必须是备案通过了的然后在springboot里面放行回调地址
/** * 支付回调通知 * * @param request 请求参数 */ @RequestMapping("/notify") public void wxNotify(HttpServletRequest request) { orderService.wxNotify(request); }
@Override public void wxNotify(HttpServletRequest request) { log.info("支付回调"); // 使用requestBody 错误,顺序不一致 String data = wxPayManager.readData(request); JSONObject jsonObject = JSONObject.parseObject(data); // 获取微信签名 String sign = request.getHeader("Wechatpay-Signature"); // 获取时间戳 String timestamp = request.getHeader("Wechatpay-Timestamp"); // 获取证书序列号 String serial = request.getHeader("Wechatpay-Serial"); // 获取加密数据 JSONObject resource = jsonObject.getJSONObject("resource"); // 获取密文 String ciphertext = resource.getString("ciphertext"); // 附加数据 String associatedData = resource.getString("asso