获取上传文件的名称

时间:2013-12-23 16:29:15

标签: scala playframework playframework-2.2

我正在使用curl上传文件:

 curl -X POST --data-binary @/home/me/my_file.jpb localhost:9001/upload

以下是如何存储它:

def upload = Action(parse.temporaryFile) {
    request =>
      import java.io.File

      val f = new File("tmp/someName") // how do I get the name of the file being uploaded?
      request.body.moveTo(f, true)
      Ok("File uploaded\n")
  }

请注意,文件可以是任何格式。我想获得实际上传文件的名称。我试过request.body.file.getName,但它会返回乱码。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

我很确定你无法从通过curl上传的二进制流中获取文件名。您需要单独显式提供文件名。

我能想到的选择是:

  • 如果您的Content-Type标题改为multipart/form-data,那么此过程非常简单,如here所述
  • 上传带有String的JSON作为文件名和文件的二进制部分。