iPhone 打开 URL 的实现
2010-03-14 21:49:00 来源:WEB开发网NSURLConnection对象提供了执行加载URL 请求的支持. 只提供了开始和取消异步装载URL请求的控制
NSURLConnection 的委托方法(delegate methods)允许一个对象接收 异步装载URL请求 的回传信息. 其他的委托方法提供设施,允许委托来定制装载一个异步URL的过程
注意: 这些委托方法将在开始异步装载操作的线程中被调用
NSURLConnect还提供了一个方便的类方法(class method) : sendSynchronousRequest:returningResponse:error:可用来 同步地加载一个URL请求
+ (NSData *)sendSynchronousRequest: (NSURLRequest *)request returningResponse: (NSURLResponse **)response error: (NSError **)error
(好像三个方法,连起来的写的样子,迷惑)
request 要装载的URL请求. 这个request 对象 作为初始化进程的一部分,被深度复制(deep-copied). 在这个方法返回之后, 再修改request, 将不会影响用在装载的过程中的request
reponse 输出参数, 由服务器返回的URL响应
error 输出参数, 如果在处理请求的过程中发生错误,就会使用. 无错误,就为NULL
返回数据
此URL请求下载到的数据. 如果不能建立链接或者下载失败, 返回nil
NSHTTPURLResponse类 提供了 访问响应信息的方法.
—————
#import
int main (int argc, char *argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSString *urlString = @”http://m0b1.tk/testing”;
NSURL *url = [NSURL URLWithString:urlString];
NSURLResponse *response = nil;
NSError *error = nil;
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:30];
NSData *dataReply = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&response error:&error];
if (nil == error) {
if (nil != response) {
//NSDictionary *headers = [(NSHTTPURLResponse*)response allHeaderFields];
NSString* content_type = [[(NSHTTPURLResponse*)response allHeaderFields]
- ››iPhone应用帮助残障儿童看图说话
- ››iPhone实用工具AppBox Pro使用教程大揭秘
- ››iphone4省电方法
- ››iphone 获取地址的详细信息
- ››iPhone 库的基本内存管理策略
- ››iPhone加密文字亲手做 私密信息有保障
- ››iphone 根据经纬度坐标取详细地址(包括国,省,市...
- ››iphone/ipad ios cocoa object-c 近期苹果UI部分小...
- ››iphone中如何进行多线程编程
- ››iPhone OS SDK的这些事[安装、下载、版本、实例、...
- ››iPhone ObjectC的NSAutoreleasePool
- ››iPhone 判断设备是在Portrait(纵向)还是(Landscap...
更多精彩
赞助商链接