我一直在尝试发送大量的post数据到play 2.0控制器,但没有成功。我使用MultipartFormDatabody parser,但是任何大于100KB的表单字段都返回空。
代码如下:

@BodyParser.Of(value = BodyParser.MultipartFormData.class)

RequestBody body = request().body();

if(body.asMultipartFormData() != null) {

Logger.debug("size: " + body.asMultipartFormData().asFormUrlEncoded().size());

String data = body.asMultipartFormData().asFormUrlEncoded().get("xmlData")[0];

//data returns empty.

我也尝试了不同的身体分析器,但都不起作用。如何在play 2.0中读取较大的post值(高达1MB)?
谢谢。

最佳答案

尝试将此添加到您的application.conf-parsers.formUrlEncoded.maxLength=1024K中。
或者可以尝试将maxlength参数添加到BodyParser中,如下所示:
@BodyParser.Of(value = BodyParser.MultipartFormData.class, maxLength = 1024 * 1024)(但没有测试)。
您可以在“最大内容长度”一节中详细阅读here

关于java - Play Framework 未收到大数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18085291/

10-10 14:21