如何正确解析来自此POST主体的值String(从spark.RequestWrapper.getBody()返回)

时间:2015-09-18 07:44:21

标签: java spark-java

很抱歉,如果这是重复的话。我在这里寻找spark.RequestWrapper.getBody()并且无法找到我想要的东西。基本上,当我发布一个包含3个正文值的帖子请求时(名称=&#34;某事,id =&#34; Something&#34;,someNumber = 1)然后调用getBody(),我收到以下内容。< / p>

------WebKitFormBoundaryAFbSXBcWNVOAmQFo
Content-Disposition: form-data; name="name"

"Something"
------WebKitFormBoundaryAFbSXBcWNVOAmQFo
Content-Disposition: form-data; name="id"

"Something"
------WebKitFormBoundaryAFbSXBcWNVOAmQFo
Content-Disposition: form-data; name="someNumber"

1
------WebKitFormBoundaryAFbSXBcWNVOAmQFo--

我相信这实际上来自IOUtils.toByteArray(servletRequest.getInputStream()),并被强制转换为字符串。考虑到它来自servletRequest,我认为这是一个非常常见的问题,但还没有找到一个库或解决方案。

提前感谢您的帮助!

P.S。 - 如果这是重复的,我很抱歉。随意标记它,我将以我的快乐方式!

编辑 - 不是Apache Spark。这一个:http://sparkjava.com/

1 个答案:

答案 0 :(得分:0)

声明路由时,声明一个参数来访问请求。使用此方法来获取请求正文,例如request.body()或request.bodyAsBytes(),因为它在documentation中完成。如果您仍然无法获得更好的格式,那么您必须自己在客户端应用程序中对其进行格式化。用于此目的的最佳内容类型是application-json。