Я столкнулся с проблемой различного поведения URLSession/URLSessionConfiguration/URLSessionDataTask в OS X и Linux.
Свифт: 3.0.2 Китура: 1.3
Я делаю следующее:
let aURL = URL(string: "...")!
// Because shared is not implemented
let sessionConfig = URLSessionConfiguration.default
sessionConfig.httpAdditionalHeaders = ["Accept": "application/json", "Accept-Language": "sv-SE"]
let session = URLSession(configuration: sessionConfig)
// additionalHeaders are set just fine
Log.info("\(session.configuration.httpAdditionalHeaders)")
let dataTask = session.dataTask(with: aURL, completionHandler: { data, loadResponse, error in
...
})
dataTask.resume()
Дополнительные заголовки устанавливаются в объекте конфигурации, но при развертывании в Bluemix ответ показывает, что поле языкового заголовка отсутствует (я получаю ответ на неправильном языке).
Я знаю, что запрос правильный, потому что, когда я создаю и запускаю это (Kitura) локально (через Xcode в OS X), я получаю ожидаемое поведение.
Кто-нибудь сталкивался с этим? Что делать? Куда идти?