iOS最成熟的REST服务库

时间:2012-10-20 22:31:08

标签: ios rest

如果我想从iOS应用程序中获取REST服务,那么最成熟的库是什么? 我最好的选择是什么?

5 个答案:

答案 0 :(得分:7)

您可以使用RestKit

或者您可以使用基础框架中已有的NSJSONSerialization

这是我做的一个项目的例子。它从json webservice获取一系列饮料:

 NSString *urlString= [NSString stringWithFormat:@"my json webservice URL"];
NSURL *url = [NSURL URLWithString:urlString];
NSData *data = [NSData dataWithContentsOfURL:url];
NSError *error;
NSDictionary *jsonResultSet = (NSDictionary*)[NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
if ([jsonResultSet count] !=0){
    NSArray* drinks = [jsonResultSet objectForKey:@"drinks"];
    for (NSDictionary* drinkDictionary in drinks) {
        Drink* drink = [[Drink alloc] initWithDictionary:drinkDictionary];
        [[DrinkList getInstance]addDrinksWithObject:drink];
    }
}

答案 1 :(得分:1)

我建议AFNetworking。以下是从Github page获取的示例代码(那里有更多样本):

NSURL *url = [NSURL URLWithString:@"https://alpha-api.app.net/stream/0/posts/stream/global"];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
    NSLog(@"App.net Global Stream: %@", JSON);
} failure:nil];
[operation start];

其他替代方案是:

其中,我认为AFNetworking和RestKit都是最受欢迎的。我个人已广泛使用AFNetworking,因此我推荐它。

答案 2 :(得分:1)

不太成熟但重量很轻:JNRestClient

答案 3 :(得分:0)

还有一个名为Alamofire(https://github.com/Alamofire/Alamofire)的新swift休息库,看起来真的很棒,它已经在github上已经超过6000颗星了,而且它是由Mattt Thompson创建的,这意味着你可以去寻找它无后顾之忧。

答案 4 :(得分:0)

JSONModel使用起来非常简单。

Overcoat + Mantle看起来非常棒。

RestKit有点啰嗦,恕我直言。