首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何验证文件上传?[游戏框架]

如何验证文件上传?[游戏框架]
EN

Stack Overflow用户
提问于 2012-04-29 22:22:49
回答 2查看 2.9K关注 0票数 1

我有一个简单的豆子,像这样:

代码语言:javascript
复制
package models;

import play.data.validation.Constraints;

public class Upload
{
    @Constraints.Required
    @Constraints.MinLength(4)
    @Constraints.MaxLength(40)
    public String name;

    @Constraints.Required
    public String inputFile;
}

和形式,像这样:

代码语言:javascript
复制
@form(action = routes.Application.submit(), 'enctype -> "multipart/form-data") {

    @inputText(
        uploadForm("name"),
        '_label -> "Name"
    )

    @inputFile(
        uploadForm("inputFile"),
        '_label -> "Queries"
    )
}

  1. 验证inputFile的最佳方法是什么?
  2. 可以用注释来完成吗?

@Required constraint根本不起作用。

我希望它被选中+在大小上添加一些限制。

EN

回答 2

Stack Overflow用户

发布于 2012-04-30 07:52:11

把你的表格写成:

代码语言:javascript
复制
 <input type="file" name="inputFile">

在提交方法中添加以下内容:

代码语言:javascript
复制
 // from official documentation
    public static Result submit() {
      MultipartFormData body = request().body().asMultipartFormData();
      FilePart file = body.getFile("inputFile");
      if (inputFile != null) {
        String fileName = picture.getFilename();
        String contentType = picture.getContentType(); 
        File file = picture.getFile();
        // method the check size
        if(!validateFileSize){
          return redirect(routes.Application.index());    // error in file size 
        }
        return ok("File uploaded");
      } else {
        // here comes the validation
        flash("error", "Missing file");
        return redirect(routes.Application.index());    
      }
    }
票数 1
EN

Stack Overflow用户

发布于 2012-08-22 13:50:13

就像下面这样吧?

代码语言:javascript
复制
MultipartFormData body = request().body().asMultipartFormData();
if (!body.getFiles().isEmpty()) { 
  // do your work
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10376533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档