iOS网络篇

简介:

iOS网络请求三步:

1、新建URL连接

2、新建请求(请求新建的URL连接)

3、建立连接。

然后就可以获取数据了。

一、同步GET请求方法


-(void)synchronizationGet

{

    NSString *strURL = @"http://olasapi.sinaapp.com//index.php";

    NSURL *url = [NSURL URLWithString:strURL];

    NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];

    

    NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

    NSLog(@"请求完成");

    

    

    NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];

    NSLog(@"%@",dic);

}

二、异步get


-(void)asynchronousGet

{

  

    NSString *strURL = @"http://olasapi.sinaapp.com//index.php";

    NSURL *url = [NSURL URLWithString:strURL];

    NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];

    

    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];

    

    if (connection) {

        _data = [NSMutableData new];

    }

}

#pragma mark - NSURLConnection回调方法

-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data

{

    [_data appendData:data];

}

-(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error

{

    

}

-(void)connectionDidFinishLoading:(NSURLConnection *)connection

{

    NSLog(@"请求完成");

    NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:_data options:NSJSONReadingAllowFragments error:nil];

    NSLog(@"%@",dic);

}

三、异步POST


-(void)asynchronousPost

{

    NSString *strURL = @"http://olasapi.sinaapp.com//index.php";

    NSURL *url = [NSURL URLWithString:strURL];

    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];

    [request setHTTPMethod:@"POST"];

//    [request setHTTPBody:@""]

    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];

    

    if (connection) {

        _data = [NSMutableData new];

    }

 

}

代理方法同get异步中的代理方法


相关文章
|
网络协议 安全 数据库
第二章TCP/IP—iOS网络七层模型
分层: 应用层 (Application): 网络服务与最终用户的一个接口。 协议有:HTTP FTP TFTP SMTP SNMP DNS 表示层(Presentation Layer): 数据的表示、安全、压缩。(在五层模型里面已经合并到了应用层) 格式有,JPEG、ASCll、DECOIC、加密格式等 会话层(Session Layer): 建立、管理、终止会话。(在五层模型里面已经合并到了应用层) 对应主机进程,指本地主机与远程主机正在进行的会话 传输层 (Transport): 定义传输数据的协议端口号,以及流控和差错效验。
470 0
第二章TCP/IP—iOS网络七层模型
|
iOS开发 开发者
iOS中的网络和多线程编程(十)
iOS中的网络和多线程编程(十)
178 0
iOS中的网络和多线程编程(十)
|
iOS开发
iOS中的网络和多线程编程(九)
iOS中的网络和多线程编程(九)
147 0
iOS中的网络和多线程编程(九)
|
编译器 调度 iOS开发
iOS中的网络和多线程编程(八)
iOS中的网络和多线程编程(八)
125 0
iOS中的网络和多线程编程(八)
|
Web App开发 XML JSON
iOS中的网络和多线程编程(七)
iOS中的网络和多线程编程(七)
153 0
iOS中的网络和多线程编程(七)
|
安全 调度 C语言
iOS中的网络和多线程编程(六)
iOS中的网络和多线程编程(六)
167 0
iOS中的网络和多线程编程(六)
|
安全 iOS开发
iOS中的网络和多线程编程(五)
iOS中的网络和多线程编程(五)
121 0
iOS中的网络和多线程编程(五)
|
API iOS开发
iOS中的网络和多线程编程(四)
iOS中的网络和多线程编程(四)
127 0