Objective-C:在iPhone上访问REST API的最佳方式

Doz*_*Doz 29 iphone rest web-services objective-c

一段时间以来一直在努力.我正在尝试在我的iphone上访问REST api,并且遇到了可以帮助我的ASIHTTP框架.所以我做了类似的事情

//call sites, so we can confirm username and password and site/sites
NSURL *url = [NSURL URLWithString: urlbase];
ASIHTTPRequest *request = [[[ASIHTTPRequest alloc] initWithURL:url] autorelease];
[request setUsername:@"doronkatz%40xx.com" ];
[request setPassword:@"xxx"];
Run Code Online (Sandbox Code Playgroud)

urlbaseREST站点的URL 在哪里.

现在,开发人员告诉我这个框架可能存在问题或错误,而且它没有正确传递头文件.是否有另一种方法可以通过身份验证来测试或访问网络REST位置?

Bla*_*ers 31

我建议查看RestKit:http: //restkit.org/ 它提供了一个很好的API,用于访问RESTful Web服务并将远程资源表示为本地对象,包括将它们持久保存到Core Data.开箱即用支持HTTP身份验证.

  • 在0.20.0中如何执行基本身份验证?我能找到的唯一例子与"RKClient"有关,但已在0.20.0中删除.非常感激您的帮忙. (2认同)

bca*_*tle 10

我是iOS开发的新手,在过去一个月左右的时间里,我一直在与本页面列出的一些大框架作斗争.这是一场噩梦.老实说,我建议你坚持使用基础知识并使用AFNetworkingApple自己的方法NSURLConnection.

列出的其中一个库不再维护.另一个最近进行了巨大的代码破坏API更改,现在描述其使用的一半教程不再有效.其他人则大量臃肿.

它比你想象的容易.一些帮助我的资源:

AFNetworking主页上的示例可能会让您获得80%的收益.

更新:Mantle框架(由Github Inc.开源)设计精良且易于使用.它处理对象映射:将JSON转换NSDictionary为您自己的自定义Objective-C模型类.它可以合理地处理默认情况,并且很容易将自己的值变换器(例如从字符串到NSURL字符串)转换为自定义变换器enum.


pau*_*erd 6

我有几个使用名为Objective Resource的框架的应用程序,它提供了一个访问远程基于REST的api的包装器.它主要针对基于Ruby on Rails的应用程序,因此可以调整XML/JSON解析来处理一些Rails默认值,但值得一看.它默认支持http基本身份验证.