Отсутствуют заголовки в uploadTask allHeaderFields. Не содержит пользовательских заголовков из Access-Control-Expose-Headers

Мой сервер использует CORS. Когда пользователь успешно входит в систему, ответ включает заголовки: access-token, uid, client

Заголовки ответа сервера включают в себя: Access-Control-Expose-Headers:access-token, uid, client

Тем не менее, когда я получаю успешный ответ от uploadTask, и доступ allHeaderFields эти ключи / значения отсутствуют.

Что мне нужно сделать, чтобы получить доступ к этим заголовкам?

Спасибо!

РЕДАКТИРОВАТЬ Добавление клиентского кода, который теперь работает нормально:

func postReq(url: URL) -> URLRequest{
    var request: URLRequest = URLRequest.init(url: url)
    request.httpMethod = "POST"
    request.setValue("application/json", forHTTPHeaderField: "content-type")

    return request
}

func login(){
        let url:URL = baseEndpoint.appendingPathComponent(Endpoints.login.rawValue)
        let request: URLRequest = postReq(url: url)
        let body: [String : String] = ["email" : "test@test.com", "password": "loremipsum"]

        let bodyData:Data = try! JSONSerialization.data(withJSONObject: body)

        uploadTask = defaultSession.uploadTask(with: request, from: bodyData, completionHandler: { (responseData, response, error) in
            if(error == nil){
                let headers =  (response as! HTTPURLResponse).allHeaderFields

            }
        })
        uploadTask?.resume()

    }

ANNNND Исправил мою проблему. Проблем не было, я просто пропустил правильный тип контента. Facepalm.

0 ответов

Другие вопросы по тегам