Я начинаю изучать Play framework и front-end development, я пишу простое приложение, я хочу, чтобы пользователь загрузил файл и ввел текстовый ввод, и файл будет изменен в соответствии с вводом текста , Моя проблема в том, что я не могу получить ввод текста в том же методе, откуда я получаю файл ввода.
def upload = Action(parse.multipartFormData(handleFilePartAsFile)) { implicit request =>
val fileOption = request.body.file("Xml To Json Converter").map {
case FilePart(key, filename, contentType, file, fileSize, dispositionType) =>
logger.info(s"key = $key, filename = $filename, contentType = $contentType, file = $file, fileSize = $fileSize, dispositionType = $dispositionType")
val txtInput = ???
val output = modifyFile(file, txtInput)
Ok(views.html.displayModifiedFile(output)
}.getOrElse("Error")
Я пытался получить ввод текста, используя этот код,
def modifyFile: Action[AnyContent] = Action {
request =>
val inputData = request.body.asFormUrlEncoded
inputData.map { args =>
val someTextInput = args("textData").head
Ok(views.html.someFile)
}.getOrElse(OK("Error"))
Но приведенный выше метод возвращает Действие типа, я хочу получить только текст Строка из запроса. Мне нужно получить загруженный текстовый файл и ввод текста в виде строки внутри одного метода, чтобы я мог работать. Я использую два разных http-запроса, один для загрузки файла и один для изменения файла на основе ввода текста. Это может быть базовый c материал, любая помощь будет оценена
Scala версия - 2,13
Play Framework версия - 2,8