首页 > 解决方案 > Uiimage 显示来自 url 的图像,没有文件扩展名

问题描述

我正在使用以下代码在 uiimage 中显示图像。当我为具有文件扩展名的图像使用 url 时,它可以正常工作。

有效的示例图片网址: https ://mysite23423.com/image.jpg

但是当我使用我的服务器提供的图像时,它在 url 中缺少文件扩展名,它不会显示它。

无效的示例图片网址: https ://mysite23423.com/image

我该如何纠正这个问题?

func loadImage(urlString: String) {
    lastURLUsedToLoadImage = urlString
    image = nil

    if let cachedImage = imageCache[urlString] {
        image = cachedImage
        return
    }

    guard let url = URL(string: urlString) else { return }
    URLSession.shared.dataTask(with: url) { (data, response, err) in
        if let err = err {
            print("Failed to fetch post image:", err)
            return
        }

        if url.absoluteString != self.lastURLUsedToLoadImage { return }

        guard let imageData = data else { return }
        let photoImage = UIImage(data: imageData)
        imageCache[url.absoluteString] = photoImage

        DispatchQueue.main.async {
            self.image = photoImage
        }
    }.resume()
}

标签: swiftxcodeuiimage

解决方案


推荐阅读