Отображение allHeaderFields в ответе AlamofireObjectMapper - PullRequest
0 голосов
/ 13 ноября 2018

Я использую AlamofireObjectMapper

, и ответ от моего сервера находится в формате JSON, но он также включает некоторые ключи в заголовках

Alamofire.request(URL).responseObject { (response: DataResponse<MyMappable>) in

let weatherResponse = response.result.value
print(weatherResponse?.location)

}    

и мою картуВ состоянии класс выглядит следующим образом1014 * но я хочу отобразить его в классе MyMappable , возможно ли это?

1 Ответ

0 голосов
/ 21 ноября 2018

Я не смог найти способ сопоставить поля заголовка с полезной нагрузкой
Я смог найти все поля заголовка из ответа и сохранить их в нашем классе двумя способами.
Первый такой

    Alamofire.request(URL).responseObject { (response: DataResponse<MyMappable>) in    
let myMappable = response.result.value
myMappable.allHeaderFields  = response.response?.allHeaderFields
print(myMappable?.location)

}

и второй способ (который я использовал), если вы используете родовой класс в качестве родительского, тогда вы можете разыграть свой ответ как удар

 Alamofire.request(URL).responseObject { (response: DataResponse<MyMappable>) in

let myMappable = response.result.value
if let genericResp = myMappable as? GenericResponse<AnyGeneric> {
     genericResp.mHeaders = response.response?.allHeaderFields
   }

}  
...