2015-06-03 3 views
0

Я пытаюсь использовать службу REST в приложении iOS. Я использую Шинель.Ответ на настраиваемый сервер Overcoat для каждого сопоставления пути ресурса к классу

В моем OVCHTTPRequestOperationManager подклассу я следующее:

+ (NSDictionary *)modelClassesByResourcePath { 
    return @{ 
      @"users/*" : [SCUser class], 
      @"user/*" : [SCUser class], 
      @"card/*" : [SCCreditCard class], 
      @"cards*" : [SCCreditCard class] 
    }; 
} 

+ (NSDictionary *)responseClassesByResourcePath{ 
    return @{ 
      @"cards" : [SCCardResponse class] 
    }; 
} 

Я хочу сериализации JSON полезной нагрузки, как это:

{ 
    "total": 2, 
    "cards": [ 
     { 
      "balance": 1000.0, 
      "ownerName": "Test One", 
     }, 
     { 
      "balance": 100.0, 
      "ownerName": "Test Two", 
     }, 
     ... 
} 

До сих пор все это хорошо, но когда я пытаюсь получить карты из объекта ответа, я получаю массив из NSDictionary объектов, а не массив из SCCreditCard объектов.

У кого-нибудь это было? Как его решить?

ответ

0

Я решил его, был в методе modelClassesByResourcePath дополнительный *:

+ (NSDictionary *)modelClassesByResourcePath { 
    return @{ 
      @"users/*" : [SCUser class], 
      @"user/*" : [SCUser class], 
      @"card/*" : [SCCreditCard class], 
      @"cards" : [SCCreditCard class] 
    }; 
} 

Все работает.