我正在开发名为“Messanger”的应用程序。
我的任务是从服务器上传和下载数据.. 我是新手,所以我不知道该怎么做。
- 我想与服务器共享数据(上传)
- 我想从服务器获取数据(下载)
谁能帮我解决这个问题?? 我需要为此编写代码。
提前致谢..
最佳答案
您可以使用官方sdk中提供的类。
0) 公共(public)部分。
首先你应该创建NSURLRequest
。例如,NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"apple.com"]];
1) 上传数据。
当你想发送一些数据时,你可以通过以下方式使用它(例如,发送 xml):
NSString *message = [[NSString alloc] initWithFormat:@"<?xml version=\"1.0\" ?>\n<parameters></parameters>"];
NSData* msgData = [message dataUsingEncoding:NSUTF8StringEncoding];
NSString *msgLength = [NSString stringWithFormat:@"%d",[msgData length]];
[request addValue:@"application/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[request addValue:msgLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"iOsApp" forHTTPHeaderField:@"User-agent"];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:msgData];
[message release];
2) 下载数据。
现在你应该开始连接了:
[NSURLConnection connectionWithRequest:request delegate:self];
3) 实现必要的委托(delegate)方法。最后你应该实现你需要的委托(delegate)方法。例如,在 - (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
方法中,您将合并接收到的数据,在方法 - (void)connectionDidFinishLoading:(NSURLConnection * )connection
和 - (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
你应该处理收到的数据。
有关您可以实现以接收有关您的互联网连接的更多信息和处理不同过程(如身份验证、响应代码和其他)的所有方法的完整列表,请阅读官方文档:NSURLConnection
关于ios - iphone(ios) 如何在服务器上上传和下载数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7306916/