Я пытаюсь загрузить файл .csv
с помощью ng-file-upload
в браузере и для Play для Scala 2.5.x на бэкэнд.Загрузка файла из Angular ng-file-upload в Play для Scala
Если я использую moveTo
в Play файл загружен, но генерироваться с заголовками и прицепами вместо простого файла:
request.body.moveTo(new File("c:\\tmp\\uploaded\\filetest.csv"))
есть способ сохранить только часть данных?
Кроме того, я попытался следующий
def doUpload = Action(parse.multipartFormData) { request =>
println(request.contentType.get)
println(request.body)
request.body.file("file").map { file =>
val filename = file.filename
val contentType = file.contentType
file.ref.moveTo(new File("c:\\tmp\\uploaded\\filetest.csv"))
}
Ok("file uploaded at " + new java.util.Date())
}
Но карта пуста. Это то, что я получаю в первых двух println
утверждений:
многочастных/form-данных MultipartFormData (Map(), Vector (FilePart (файл, hello2.csv, некоторые (применение/vnd.ms-Excel) , TemporaryFile (C: \ Users \ Busine ~ 1 \ AppData \ Local \ Temp \ playtemp2236977636541678879 \ multipartBody2268668511935303172asTemporaryFile))), Vector())
это означает, что я получаю что-то, но я не могу извлечь его. Есть идеи?
вы можете добавить импорт? спасибо – ps0604
Я получаю эту ошибку при загрузке файла (помню, я работаю в Windows):'play.api.http.HttpErrorHandlerExceptions $$ anon $ 1: Execution exception [[UnsupportedOperationException: 'posix: permissions' не поддерживается как начальный attribute]] ' – ps0604
Я исправил это удаление переменной attr: val path: Path = Files.createTempFile ("multipartBody", "tempFile"), затем он работал – ps0604