iPhone:如何从web应用程序获取数据?
对不起,如果这是一个愚蠢的问题,但我是新手 我正在开始iPhone应用程序开发,并希望创建一个涉及从web服务提取数据的应用程序 假设url是iPhone:如何从web应用程序获取数据?,iphone,objective-c,api,web-applications,Iphone,Objective C,Api,Web Applications,对不起,如果这是一个愚蠢的问题,但我是新手 我正在开始iPhone应用程序开发,并希望创建一个涉及从web服务提取数据的应用程序 假设url是http://myapp.com/api/people/fetchall并返回XML数据 如何将这些数据输入iPhone应用程序 更新:在做了一些研究之后,我决定(在服务器端)实现一个返回JSON的。因此,我的iPhone应用程序最终将是一个REST客户端 资源: 以下是一些到目前为止我发现很有用的链接: 看一看这个项目Facebook iPho
http://myapp.com/api/people/fetchall
并返回XML数据
- 如何将这些数据输入iPhone应用程序
NSURLRequest
及其可变对应项和NSURLConnection
及其委托协议nsurlconnectionelegate
解析数据将取决于数据的格式。对于XML,您可以使用iPhone SDK中提供的XML解析器,NSXMLParser
如果要使用JSON,可以使用iPhone上提供的JSON解析库之一。就我个人而言,我使用过和
要填充表视图,您需要实现来自UITableViewDataSource
方法的两个方法,以及来自UITableViewDelegate
的一些方法。阅读UITableView
类和上述协议的文档应该可以为您提供足够的信息来开始使用它们
我希望这对您有所帮助,并为您提供了解更多信息的起点。好的,您已经详细介绍了要点,这是一个良好的开端 首先,web应用程序需要其API以客户端可以轻松解析的格式返回数据,无论是iPhone应用程序还是其他任何应用程序。因此,许多web应用程序使用JSON或XML。HTML不是传输数据的好格式,HTML适合标记要显示的文本 因此,首先,编写web应用程序以返回XML或JSON格式的响应。如果您有时间,您可以让您的web应用同时执行这两项操作,并将响应的格式指定为参数 要将数据从web应用程序下载到iPhone应用程序,您需要建立URL连接并从其中一个API调用下载数据 例如,如果您的API有一个方法将返回有关用户的一些信息,那么您需要在iPhone客户端中构建一个http请求,并通过API URL将其发送到服务器,指定它是GET还是PUT或其他类型的http请求 要了解这方面的有趣类是
NSURLRequest
及其可变对应项和NSURLConnection
及其委托协议nsurlconnectionelegate
解析数据将取决于数据的格式。对于XML,您可以使用iPhone SDK中提供的XML解析器,NSXMLParser
如果要使用JSON,可以使用iPhone上提供的JSON解析库之一。就我个人而言,我使用过和
要填充表视图,您需要实现来自UITableViewDataSource
方法的两个方法,以及来自UITableViewDelegate
的一些方法。阅读UITableView
类和上述协议的文档应该可以为您提供足够的信息来开始使用它们
我希望这对你有所帮助,并给你一个了解更多的起点。非常简单。。。
这里有几个链接可以让你开始
本教程将告诉你如何在plist文件中进行必要的更改,以及如何告诉你的应用程序从URL启动。其次,代码需要在应用程序委托类中的方法中完成,该方法名为:
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
从url获取所需的所有信息,并从该url调用JSON web服务。调用JSON的示例如下:
[[AFCoVuAPIClient sharedClient] getPath:@"whatever.json"
parameters:[NSDictionary dictionaryWithObject:loginSessionKey forKey:@"login_session_key"]
success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"Did logout successfully on app termination");
[application endBackgroundTask: background_task]; //End the task so the system knows that you are done with what you need to perform
background_task = UIBackgroundTaskInvalid; //Invalidate the background_task
}
failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Did NOT logout successfully on app termination");
}];
你可以将数据保存在你的单例类中
您的afcovapiclient class.h文件如下所示
#import "AFHTTPClient.h"
@interface AFCoVuAPIClient : AFHTTPClient
+(AFCoVuAPIClient *)sharedClient;
@end
afcovapiclient.m文件如下所示
#导入“afcovapiclient.h”
希望这有助于非常简单。。。
这里有几个链接可以让你开始
本教程将告诉你如何在plist文件中进行必要的更改,以及如何告诉你的应用程序从URL启动。其次,代码需要在应用程序委托类中的方法中完成,该方法名为:
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
从url获取所有信息