开发者社区> 问答> 正文

jFinal貌似没有支持从请求流中读取字符串数据。:报错

最近在使用jFinal做个微信接口程序,微信Post过来的xml不是以parameter方式的。传统的servlet方法读取为:

request().getInputStream() ,在输入流中读取xml数据然后在组合成String类型的xml数据,这个过程有读取流、组合字符串、关闭流等一系列操作比较麻烦。尝试使用jfinal代替这个直接从请求中读取xml的String,发现getParm*方法都貌似没有这样的功能。其实就是要个getRequest().getInputString()这样的方法。请问老大,jFinal是不是没有支持这种读取流的方式?@JFinal

附可能的请求方式例子:

HttpClient httpClient = new HttpClient();  
String xmlData = getInput();  //请求数据
int xmlDataLength = xmlData.getBytes("UTF-8").length;  
PostMethod method = new PostMethod(url);  
method.setRequestBody(xmlData);  
method.setRequestHeader("Content-type", "text/xml; charset=UTF-8");  
int statusCode = httpClient.executeMethod(method);



展开
收起
kun坤 2020-06-08 11:03:25 503 0
1 条回答
写回答
取消 提交回答
  • 没有,直接使用这个吧:  http://git.oschina.net/gson/wechat JFinal集成这个也很容易!######

         可以在 Controller 中调用  getRequest().getInputStream(); 得获取 InputStream 对象,读取操作写个循环即可打完收工。

        建议封装个工具类 XmlRequestKit 来个 String readXml()方法

    ######回复 @lvgm : 需要多方面权衡,需要做的功能非常多,一步步来,先做最急迫的需求######嗯。好。后续的版本中是否可以考虑把这个操作分装进去!
    2020-06-08 15:28:06
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JS 语言在引擎级别的执行过程 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载