Как читать и записывать изображения в корневой веб-каталог в Perfect-Swift?

Я разместил веб-приложение Perfect-Swift на сервере Ubuntu Linux. Я ищу способ прочитать файл изображения из корневого веб-каталога и преобразовать его в строку, совместимую с base64, для отправки в ответ.


person rajeeva9    schedule 17.05.2017    source источник


Ответы (1)


Я думаю, что-то вроде этого должно работать:

func yourHandler(request: HTTPRequest, _ response: HTTPResponse) {

   let thisFile = File(Dir.workingDir.path + "21serfing.jpg")
   if let bytes = try? thisFile.readSomeBytes(count: thisFile.size) {
      let data = Data(bytes: bytes)
      let base64Data = data.base64EncodedString()

      response.appendBody(string: base64Data)
      response.completed()
      return

   }

}

не забудьте import PerfectLib

person Alex Shubin    schedule 17.05.2017
comment
Это работает .. Спасибо. Мне пришлось изменить Dir.workDir.path на server.documentRoot. Здесь server — это экземпляр HTTPServer, созданный в файле main.swift. - person rajeeva9; 18.05.2017