ヘッダをつけて画像をダウンロードしたいときってあるよなァ!
環境
SDWebImage5.8.0以上
方法
sd_setImage(with:placeholderImage:options:context)
を利用する
sd_setImage(with: url,
placeholderImage: nil,
context: [.downloadRequestModifier: SDWebImageDownloaderRequestModifier(headers: ["Foo": "Bar"])])
あるいはclosureを使って
sd_setImage(with: url,
placeholderImage: nil,
context: [.downloadRequestModifier: SDWebImageDownloaderRequestModifier {
var request = $0
request.setValue("Bar", forHTTPHeaderField: "Foo")
return request
}])
また、全てのリクエストに共通のヘッダをつけたい場合は
SDWebImageDownloader.shared.setValue("Bar", forHTTPHeaderField: "Foo")
でカスタムヘッダを設定できる
参考元
https://github.com/SDWebImage/SDWebImage/pull/2990
https://stackoverflow.com/questions/16266462/sdwebimage-and-setting-custom-http-headers