我是新手玩框架2.0并希望在我的本地文件系统中上传文件。但我不知道如何开始这个。任何人都可以帮助我吗?
答案 0 :(得分:3)
我们的表格
@form(action = routes.Application.upload, 'enctype -> "multipart/form-data") {
<input type="file" name="picture">
<p>
<input type="submit">
</p>
}
我们的上传操作
@BodyParser.Of(value = BodyParser.Text.class, maxLength = 10 * 1024)
public static Result upload() {
MultipartFormData body = request().body().asMultipartFormData();
FilePart picture = body.getFile("picture");
if (picture != null) {
String fileName = picture.getFilename();
String contentType = picture.getContentType();
File file = picture.getFile();
return ok("File uploaded");
} else {
flash("error", "Missing file");
return redirect(routes.Application.index());
}
}
只需将maxLength = 10 * 1024
(大约10kb)更改为您想要的长度,就可以在documentation
如果您要通过Ajax发送文件。使用这个
public static Result upload() {
File file = request().body().asRaw().asFile();
return ok("File uploaded");
}
上面的响应将编码为Mutlipart/form-data
,但只包含普通内容文件