file-upload - 如何将base64编码的文件发送到PlayFramework服务器?

标签 file-upload filereader playframework-2.1

我想使用新的 FileReader API 实现 FileUpload。从客户端来看,一切正常,我可以向服务器发送 PUT 请求,其中包含包含 Base64 编码文件的正确字段。

但是在服务器端,情况不太好,这是我的结果:

Logger.info(String.valueOf(request().body().asRaw())); // null
Logger.info(String.valueOf(request().body().asText())); // null

最重要的是:

Logger.info(String.valueOf(request().body().isMaxSizeExceeded())); // true !

我错过了什么?我怎样才能让它发挥作用?

最佳答案

我找到了问题的答案!

对于那些正在寻找它的人,这就是答案:

您需要添加 BodyParser 作为方法的注释,并指定更高的 maxLength 值。

@BodyParser.Of(value = BodyParser.Json.class, maxLength = 1024 * 1024)
public static Result method() {
    Logger.info(String.valueOf(request().body().asJson())); // Will not be empty!
}

关于file-upload - 如何将base64编码的文件发送到PlayFramework服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14852805/

相关文章:

jquery - 无法让 blueimp/jQuery.fileupload 插件工作

file - 使用 HTML5 将图像转换为二进制数组 (blob)

java - Playframework 2.1/Ebean 错误插入到 pgsql : Cannot change transaction read-only property in the middle of a transaction

scala - Play Framework 2.1 中的 AbsoluteURI 支持

intellij-idea - Intellij IDEA 12 无法识别 Build.scala 中设置的 Playframework 2.1 (java) 依赖项

node.js - 在reactJS中使用 "fetch"上传文件

javascript - IE文件上传问题

javascript - 当用户单击“保存”时,如何使用输入字段将图像转换为 Base64

java - 读入文件以创建二维数组单词搜索难题并解决

javascript - Angular - FileReader() 没有获得任何路径