diff --git a/TIMoyaNetworking/Sources/NetworkService/Plugins/AdditionalHeadersPlugin.swift b/TIMoyaNetworking/Sources/NetworkService/Plugins/AdditionalHeadersPlugin.swift new file mode 100644 index 00000000..5aa45f76 --- /dev/null +++ b/TIMoyaNetworking/Sources/NetworkService/Plugins/AdditionalHeadersPlugin.swift @@ -0,0 +1,19 @@ +import Moya +import Alamofire +import Foundation + +public protocol AdditionalHeadersPlugin: PluginType { + var additionalHeaders: HTTPHeaders { get } +} + +public extension AdditionalHeadersPlugin { + func prepare(_ request: URLRequest, target: TargetType) -> URLRequest { + var modifiedRequest = request + + for header in additionalHeaders { + modifiedRequest.addValue(header.value, forHTTPHeaderField: header.name) + } + + return modifiedRequest + } +}