时间:2021-05-20
介绍
大家都知道微信支付的回调链接要求不能跟参数,但又要接收返回的xml数据。我开始使用@RequestBody注解在参数上,希望能获取xml数据,测试失败。最后使用HttpServletRequest去获取数据成功了。
示例代码
@RequestMapping("/weixinpay/callback")public String callBack(HttpServletRequest request){ InputStream is = request.getInputStream(); String xml = StreamUtil.inputStream2String(is, "UTF-8") /** * 后面把xml转成Map根据数据作逻辑处理 */}/** * InputStream流转换成String字符串 * @param inStream InputStream流 * @param encoding 编码格式 * @return String字符串 */public static String inputStream2String(InputStream inStream, String encoding){ String result = null; try { if(inStream != null){ ByteArrayOutputStream outStream = 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); } tempBytes = null; outStream.flush(); result = new String(outStream.toByteArray(), encoding); } } catch (Exception e) { result = null; } return result;}总结
以上就是这篇文章的全部内容了,希望能对大家的学习或者工作带来一定的帮助,如果有疑问大家可以留言交流。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
promise化的原因微信小程序的api用的是对象参数回调模式,很容易造成回调地狱,代码难以阅读,判断,修改和调试.微信小程序api示例//获取用户信息wx.g
c++回调之利用函数指针示例复制代码代码如下:#includeusingnamespacestd;/******************************
微信小程序request接口的封装实例代码小程序request接口的封装(本质上是对request回调函数再次回调)module.exports.getData
本文实例讲述了Python微信企业号开发之回调模式接收微信端客户端发送消息及被动返回消息。分享给大家供大家参考,具体如下:说明:此代码用于接收手机微信端发送的消
如果是iOS9.0之前,处理微信回调时,首先在APPDelegate中写如下的代码://iOS9.0之前的处理方法不保证正确,如有错误还望指正-(BOOL)ap