我在调用带有大量数据的Play Scala控制器方法时遇到问题。我有文件上传方法,需要2个上传文件并处理它们。如果文件大小很大,则控制器方法被调用两次。如果文件大小较小,它工作正常,只被调用一次。我不确定幕后发生了什么。
routes.conf
POST /test/upload controllers.TestController.upload(id:Int, isTest: Boolean)
TestController.scala
def upload(id: Int, isTest: Boolean) = Action(parse.multipartFormData) { implicit request: Request[play.api.mvc.MultipartFormData[play.api.libs.Files.TemporaryFile]] =>
.....
.....
}
upload.scala.html
@helper.form(action = routes.TestController.upload(form.id, isTest), 'enctype -> "multipart/form-data") {
<div class="form-group">
<label for="file1">File 1:</label>
<input class='btn btn-outline btn-primary' name="file1" type="file" data-preview-file-type="text" >
</div>
<div class="form-group">
<label for="file1">File 2:</label>
<input class='btn btn-outline btn-primary' name="file2" type="file" data-preview-file-type="text" >
</div>
<button type="submit" class="btn btn-default btn-primary" id="uploadButton" onclick="$('#myPleaseWait').modal('show');">
Upload</button>
}
有关为何两次调用该方法的任何帮助都会有所帮助。