مقدمة
يعلم الجميع أن متطلبات رابط رد الاتصال في WeChat Pay لا يمكن أن تتبعها معلمات ، ولكنها تحتاج أيضًا إلى تلقي بيانات XML التي تم إرجاعها. لقد بدأت في استخدام @RequestBody التعليق التوضيحي على المعلمات ، على أمل الحصول على بيانات XML ، فشل الاختبار. أخيرًا ، باستخدام HttpServletRequest للحصول على البيانات بنجاح.
نموذج الرمز
requestmapping ("/weixinpay/callback") سلسلة الاتصال العام (طلب httpservletrequest) {inputStream is = request.getInputStream () ؛ String XML = STORMUTIL.INPUTSTREAM2STRING (IS ، "UTF-8") /*** لاحقًا ، قم بتحويل XML إلى خريطة للمعالجة بشكل منطقي بناءً على البيانات* /} /*** يتم تحويل دفق inputStream إلى سلسلة سلسلة* param instream دفق* param تشفير تنسيق الترميز* @regurn string*/public static string inputStream2String (inputStream instream ، string inchoding) {string result = null ؛ حاول {if (instream! = null) {bytearrayoutputStream OutStream = new ByteArrayoutputStream () ؛ byte [] tempbytes = new byte [_buffer_size] ؛ عدد int = -1 ؛ بينما ((count = instream.read (tempbytes ، 0 ، _buffer_size))! = -1) {OutStream.write (tempbytes ، 0 ، count) ؛ } tempbytes = null ؛ Outstream.flush () ؛ النتيجة = سلسلة جديدة (OutStream.TobyTearRay () ، الترميز) ؛ }} catch (استثناء e) {result = null ؛ } نتيجة الإرجاع ؛}لخص
ما سبق هو المحتوى الكامل لهذه المقالة. آمل أن يساعدك ذلك في الدراسة أو العمل. إذا كان لديك أي أسئلة ، فيمكنك ترك رسالة للتواصل.