diff --git a/Sources/MuxUploadSDK/Extensions/NSMutableURLRequest+Reporting.swift b/Sources/MuxUploadSDK/Extensions/NSMutableURLRequest+Reporting.swift index e518f3e0..eb196569 100644 --- a/Sources/MuxUploadSDK/Extensions/NSMutableURLRequest+Reporting.swift +++ b/Sources/MuxUploadSDK/Extensions/NSMutableURLRequest+Reporting.swift @@ -7,7 +7,8 @@ import Foundation extension NSMutableURLRequest { static func makeJSONPost( url: URL, - httpBody: Data + httpBody: Data, + additionalHTTPHeaders: [String: String] ) -> NSMutableURLRequest { let request = NSMutableURLRequest( url: url, @@ -18,6 +19,10 @@ extension NSMutableURLRequest { request.httpMethod = "POST" request.setValue("application/json", forHTTPHeaderField: "Accept") request.setValue("application/json", forHTTPHeaderField: "Content-Type") + for keypair in additionalHTTPHeaders { + request.setValue(keypair.value, forHTTPHeaderField: keypair.key) + } + request.httpBody = httpBody return request diff --git a/Sources/MuxUploadSDK/InternalUtilities/Reporting/Reporter.swift b/Sources/MuxUploadSDK/InternalUtilities/Reporting/Reporter.swift index 34cdacd8..06492d77 100644 --- a/Sources/MuxUploadSDK/InternalUtilities/Reporting/Reporter.swift +++ b/Sources/MuxUploadSDK/InternalUtilities/Reporting/Reporter.swift @@ -20,6 +20,9 @@ class Reporter: NSObject { var sessionID: String = UUID().uuidString var url: URL + var additionalHTTPHeaders: [String: String] { + ["x-litix-sdk": "swift-upload-sdk"] + } // TODO: Set these using dependency Injection var locale: Locale { @@ -65,7 +68,8 @@ class Reporter: NSObject { let request = NSMutableURLRequest.makeJSONPost( url: url, - httpBody: httpBody + httpBody: httpBody, + additionalHTTPHeaders: additionalHTTPHeaders ) guard let dataTask = session?.dataTask( @@ -268,7 +272,8 @@ extension Reporter: URLSessionDelegate, URLSessionTaskDelegate { // for any weirdness let request = NSMutableURLRequest.makeJSONPost( url: redirectURL, - httpBody: httpBody + httpBody: httpBody, + additionalHTTPHeaders: additionalHTTPHeaders ) completionHandler(request as URLRequest)