FMPUtils.RequestResponseParser

Описание

Класс FMPUtils.RequestResponseParser предназначен для обработки JSON-ответов в результате запросов к серверу. Наследник класса FMPUtils.Parser.

class RequestResponseParser : FMPUtils.Parser

Методы

Метод Описание
getRawError() Получение ошибки из поля «raw» в JSON-структуре. Возвращает ошибку запроса.
func getRawError() -> FMPError?
handleResponse() Обработка текущей JSON-структуры. Возвращает кортеж, содержащий ответ сервера (успех, ошибка, результат).
func handleResponse() -> FMPRequestResponse

Примеры

Получение ошибки из поля «raw»:

let json: NSDictionary = ["status" : "error", "result" : ["raw" : ["code" : 503, "description": "Service Unavailable"]]]
  
// Построим экземпляр класса FMPUtils.RequestResponseParser. Подробнее в примерах к FMPUtils.RequestResponseParser.Builder.
let requestResponseParser: FMPUtils.RequestResponseParser = FMPUtils().requestResponse
    .json(json)
    .build()
  
// Получим ошибку
let error: FMPError? = requestResponseParser.getRawError() // FMPError.error(code: "503", description: "Service Unavailable")

Обработка  json-ответа сервера:

let json: NSDictionary = ["status" : "ok", "result" : ["key" : "value"]]
  
// Построим экземпляр класса FMPUtils.RequestResponseParser. Подробнее в примерах к FMPUtils.RequestResponseParser.Builder.
let requestResponseParser: FMPUtils.RequestResponseParser = FMPUtils().requestResponse
    .json(json)
    .build()
  
// Получим обработанный ответ сервера
let result: FMPRequestResponse? = requestResponseParser.handleResponse() // (success: true, error: nil, result: ["key" : "value"])

См. также:

Фреймворк FMPWrapper | Классы