Как получить заголовок ответа Alamofire для запроса

как я могу получить заголовки ответов для запроса? Ниже приведен запрос.

Alamofire.request(.GET, requestUrl, parameters:parameters, headers: headers)
        .responseJSON { response in switch response.result {
        case .Success(let JSON):

            ...

        case .Failure(let error):

            ...

    }

Спасибо заранее!

Ответ 1

Если ответ является типом NSHTTPURLResponse, вы можете получить заголовок от response.allHeaderFields.

Итак, когда вы используете ответ AlamofireJSON, вы можете получить доступ к свойству NSHTTPURLResponse следующим образом:

Alamofire.request(.GET, requestUrl, parameters:parameters, headers: headers).responseJSON {
        response in
        print(response.response?.allHeaderFields)
}

Как говорится в документации Apple:

Словарь, содержащий все поля заголовка HTTP, полученные как часть ответа сервера. Изучая этот словарь, клиенты могут видеть "сырую" информацию заголовка, возвращаемую HTTP-сервером.

Ключами в этом словаре являются имена полей заголовка, полученные от сервера. См. RFC 2616 для списка широко используемых полей заголовка HTTP.

Итак, чтобы получить, например, заголовок контента в заголовке ответа, вы можете получить к нему доступ таким образом:

if let contentType = response.response?.allHeaderFields["Content-Type"] as? String {
        // use contentType here
}