Как создать миниатюру изображения из файла, загруженного в cloudinary в Scala - PullRequest
0 голосов
/ 07 февраля 2020

Может кто-нибудь помочь мне с кодом для создания миниатюры для любого файла (CSV, XLSX, DOCX, PDF, и т. Д. c) в Scala. Я загружаю файл в облачном хранилище, и с помощью облачного хранилища мы можем создавать эскизы изображений по ссылке: https://cloudinary.com/blog/how_to_generate_thumbnails_for_office_documents_using_cloudinary_and_aspose Но я не могу понять, как добиться того же в Scala. Ниже мой код загрузки файла.

request.body.asMultipartFormData.map { multipartFormData =>
            multipartFormData.file("file").map { file =>
              val companyId = cachedUser.companyId
              val splitFile = file.filename.split("\\.")
              val fileExtension = splitFile(splitFile.length - 1)
              if (!notAllowedFileExt.contains(fileExtension)) {
                val fileName = UserUtil.md5(cachedUser.userId + "&" + user.name + /*"&" + user.rememberToken +*/ "&" + scala.util.Random.nextInt) + "." + fileExtension
                //val fileName = "userpic" + cachedUser.userId + "." + fileExtension
                Logger.info(request.remoteAddress + " : " + cachedUser.userId + " --> uploaded file " + filesUploadPath + "/" + fileName)
                val fileLoc = new File(filesUploadPath + "/" + fileName)
                file.ref.moveTo(fileLoc, replace = true)
                val cloudFileName = "rewards_and_recognition/attachments/"+companyId + "/userfile"+ unixTimestamp + cachedUser.userId /**** Cloudinary File Name ****/
                val (cloudinaryAttachmentUrl, publicId, url) = Await.result(CloudinaryUpload.imageUpload(cloudFileName, fileLoc.getAbsolutePath, file.contentType), Duration(40, "second"))

                if(cloudinaryAttachmentUrl != ""){
                  Ok(Json.obj("status_message" -> "File uploaded", "filename" -> file.filename, "cloud_attachment" -> url, "public_id" -> publicId))
                } else
                  NotFound(Json.obj("err" -> "Cloudinary upload failed!"))
              } else {
                BadRequest(Json.obj("err" -> "Invalid File Format!"))
              }
            }.getOrElse(BadRequest(Json.obj("err" -> "Please select a file and press upload button")))
          }.getOrElse(NotFound(Json.obj("err" -> "MultipartFormData not found")))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...