| | |
| | | private WechatAuthProperties wechatAuthProperties; |
| | | |
| | | @Override |
| | | public ResponseEntity<String> toNotify(HttpServletRequest request) { |
| | | public ResponseEntity<String> toNotify(String param, HttpServletRequest request) { |
| | | String resXml = ""; |
| | | ResponseEntity responseEntity = null; |
| | | try { |
| | | InputStream inputStream = request.getInputStream(); |
| | | //获取请求输入流 |
| | | ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); |
| | | byte[] buffer = new byte[1024]; |
| | | int len = 0; |
| | | while ((len = inputStream.read(buffer)) != -1) { |
| | | outputStream.write(buffer, 0, len); |
| | | } |
| | | outputStream.close(); |
| | | inputStream.close(); |
| | | Map<String, Object> map = PayUtil.getMapFromXML(new String(outputStream.toByteArray(), "utf-8")); |
| | | |
| | | Map<String, Object> map = PayUtil.getMapFromXML(param); |
| | | logger.info("【小程序支付回调】 回调数据: \n" + map); |
| | | String returnCode = (String) map.get("return_code"); |
| | | if ("SUCCESS".equalsIgnoreCase(returnCode)) { |
| | |
| | | try { |
| | | responseEntity = restTemplate.exchange(url, httpMethod, httpEntity, String.class); |
| | | } catch (HttpStatusCodeException e) { //这里spring 框架 在4XX 或 5XX 时抛出 HttpServerErrorException 异常,需要重新封装一下 |
| | | responseEntity = new ResponseEntity<String>("请求下游系统异常," + e.getResponseBodyAsString(), e.getStatusCode()); |
| | | responseEntity = new ResponseEntity<String>( e.getResponseBodyAsString(), e.getStatusCode()); |
| | | } catch (Exception e) { |
| | | responseEntity = new ResponseEntity<String>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR); |
| | | } finally { |