Scala 播放2.0的Ajax文件上载:存在,但替换参数为false
我在客户端用Valum实现Ajax文件上传并播放!服务器端的2.0.4。我的操作方法如下所示:Scala 播放2.0的Ajax文件上载:存在,但替换参数为false,scala,file-upload,playframework-2.0,Scala,File Upload,Playframework 2.0,我在客户端用Valum实现Ajax文件上传并播放!服务器端的2.0.4。我的操作方法如下所示: def ajaxup = Action(parse.temporaryFile) { request => try { request.body.moveTo(new File("/somepath/foo.jpg")) } catch { case e: Exception => Logger.error(e.getMessage) }
def ajaxup = Action(parse.temporaryFile) { request =>
try {
request.body.moveTo(new File("/somepath/foo.jpg"))
} catch {
case e: Exception => Logger.error(e.getMessage)
}
Ok("File uploaded")
}
上传工作正常,即文件以/somepath/
上的名称foo.jpg
正确保存。但它也抛出了一个例外:
Path(/somepath/foo.jpg) exists but replace parameter is false
我怎样才能避免呢?是否需要对正在创建的文件设置任何属性?从中,要替换该文件,应使用:
request.body.moveTo(new File("/somepath/foo.jpg"), true)
request.body.moveTo(new File("/somepath/foo.jpg"), true)
我假设您想要覆盖现有文件
/somepath/foo.jpg
。
如果您没有,只需检查之前,如果该文件已经存在
无论如何,错误消息已经给了你一个提示。
查看临时文件
案例类的。moveTo
方法可以有2个参数;第二个默认值为false
,表示要替换现有文件
因此,简言之
request.body.moveTo(new File("/somepath/foo.jpg"))
你写