представлять
Все знают, что требования к ссылке обратного вызова WeChat Pay не могут сопровождаться параметрами, но им также необходимо получить возвращенные данные XML. Я начал использовать аннотацию @RequestBody по параметрам, надеясь получить данные XML, тест не удался. Наконец, используя HttpServletRequest для успешного получения данных.
Пример кода
@Requestmapping ("/weixinpay/callback") public String callback (httpservlectrequest) {inputstream is = request.getInputStream (); String xml = streamutil.inputStream2String (is, "utf-8") /*** Позже преобразуйте XML в карту, чтобы логически обработать данные на основе данных* /} /*** Поток inputstream преобразуется в строку строки* @param instream inputStream Stream* @param кодирование кодирования формата* @return String String*/public Static String InputStream2String (inputstream, incoding string) {string result = null; попробуйте {if (instream! = null) {bytearrayoutputstream upstream = new BytearrayOutputStream (); byte [] tempbytes = new byte [_buffer_size]; int count = -1; while ((count = instream.read (Tempbytes, 0, _buffer_size))! = -1) {outstream.write (Tempbytes, 0, count); } Dempbytes = null; upstream.flush (); result = new String (upstream.tobytearray (), кодирование); }} catch (Exception e) {result = null; } return Result;}Суммировать
Вышеуказанное - все содержание этой статьи. Я надеюсь, что это поможет вам учиться или работать. Если у вас есть какие -либо вопросы, вы можете оставить сообщение для общения.