mirror of
https://github.com/Ranchero-Software/NetNewsWire
synced 2025-08-12 06:26:36 +00:00
Add special case user-agent for openrss.org when downloading from Downloader (this matches behavior in DownloadSession).
This commit is contained in:
@@ -38,16 +38,15 @@ public final class Downloader {
|
||||
}
|
||||
|
||||
public func download(_ url: URL, _ completion: DownloadCallback? = nil) {
|
||||
let task = urlSession.dataTask(with: url) { (data, response, error) in
|
||||
DispatchQueue.main.async() {
|
||||
completion?(data, response, error)
|
||||
}
|
||||
}
|
||||
task.resume()
|
||||
download(URLRequest(url: url), completion)
|
||||
}
|
||||
|
||||
public func download(_ urlRequest: URLRequest, _ completion: DownloadCallback? = nil) {
|
||||
let task = urlSession.dataTask(with: urlRequest) { (data, response, error) in
|
||||
|
||||
var urlRequestToUse = urlRequest
|
||||
urlRequestToUse.addSpecialCaseUserAgentIfNeeded()
|
||||
|
||||
let task = urlSession.dataTask(with: urlRequestToUse) { (data, response, error) in
|
||||
DispatchQueue.main.async() {
|
||||
completion?(data, response, error)
|
||||
}
|
||||
|
||||
@@ -66,6 +66,16 @@ extension Set where Element == URL {
|
||||
}
|
||||
}
|
||||
|
||||
extension URLRequest {
|
||||
|
||||
mutating func addSpecialCaseUserAgentIfNeeded() {
|
||||
|
||||
if let url, url.isOpenRSSOrgURL {
|
||||
setValue(UserAgent.openRSSOrgUserAgent, forHTTPHeaderField: HTTPRequestHeader.userAgent)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
extension UserAgent {
|
||||
|
||||
static let openRSSOrgUserAgent = {
|
||||
|
||||
Reference in New Issue
Block a user