[Play] アップロードファイルの制限を掛ける方法

PlayFramework2.xでのファイルアップロード時にサイズ制限を掛ける方法です。

どうやら maxLength という指定を行う事で対応できるようです。
以下サンプル

def upload = Action.async(parse.maxLength(1024 * 200, parse.multipartFormData)){ 
  implicit request =>   
  scala.concurrent.Future {      
    request.body match {
      case Left(err) => EntityTooLarge("upload image too big")
      case Right(body) => {

         val opFile = body.file("image")
         opFile match {
            case None => Forbidden
            case Some(file) =>{
                val tempFile: TemporaryFile = file.ref
                     
                // ごにょごにょ 
                // val f:java.io.File = tempFile.file
                     
                tempFile.clean
            }
          }
    
      }
    }
  }
}

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です