JSON-запрос изображения в UIImageView - PullRequest
1 голос
/ 05 июня 2019

Я хотел бы скачать изображение файла JSON онлайн. Это изображение должно отображаться в UIImageView.

Я понятия не имею, как это работает, потому что я новичок в Swift.

По крайней мере, я знаю, что мне нужен запрос JSON, но, поскольку я могу вывести изображение в ImageView, я не знаю

Я пытался загрузить изображение с JSON-запросом, но мне пока не удалось

public func fetchJSONPicture() {
        let urlString = "EXAMPLE-URL"
        guard let url = URL(string: urlString) else { return }
        URLSession.shared.dataTask(with: url) { (data, _, err) in
            DispatchQueue.main.async {
                if let err = err {
                    print("Failed to get data from url:", err)
                    return
                }

                guard let data = data else { return }

                do {

                    self.coursesPicture = [try JSONDecoder().decode(CoursePicture.self, from: data)]
                    DispatchQueue.main.async {
                        self.tableView.reloadData()
                    }
                } catch let jsonErr {
                    print("Failed to decode:", jsonErr)
                }
            }
            }.resume()


    }

Возможно, существует очень простое решение проблемы, но я пока не нашел его. Может ли кто-нибудь помочь мне с этим?

1 Ответ

0 голосов
/ 05 июня 2019

После анализа JSON, когда у вас есть "EXAMPLE_URL", вы можете извлечь image из URL, используя URLSession, то есть

if let url = URL(string: "EXAMPLE_URL") {
    URLSession.shared.dataTask(with: url) { (data, urlResponse, error) in
        if let data = data {
            DispatchQueue.main.async {
                imageView.image = UIImage(data: data)
            }
        }
    }.resume()
}
...