How can i add custom Interceptor in URLRequest and URLSession for all URLRequest in app. So i can add my own custom HTTPHeader Fields at one place for all http request, there is alamofire Interceptor but i don't want to use alamofire, i want Interceptor in urlsession and urlrequest in swift 4. I extend the urlrequest but not work for me.
//1st One
extension URLRequest {
init(_ url: URL) {
self.init(url: url)
self.setValue(deviceInformation.shared.deviceModel, forHTTPHeaderField: "deviceModel")
self.allHTTPHeaderFields?.updateValue(deviceInformation.shared.deviceModel, forKey: "deviceModel1")
}
}
// 2nd one
extension URLRequest {
var instance: URLRequest {
var instanceRequest: URLRequest!
instanceRequest.allHTTPHeaderFields?.updateValue(deviceInformation.shared.deviceModel, forKey: "deviceModel")
instanceRequest.addValue(deviceInformation.shared.deviceSystemName, forHTTPHeaderField: "deviceSystemName")
instanceRequest.addValue(deviceInformation.shared.deviceSystemVersion, forHTTPHeaderField: "deviceSystemVersion")
instanceRequest.addValue(deviceInformation.shared.getAppVersion(), forHTTPHeaderField: "appVersion")
return instanceRequest
}
}
//both are not working