[转载]iOS- 网络访问两种常用方式【GET & POST】实现的几个主要步骤 - 清澈Saup - 博客园

[转载]iOS- 网络访问两种常用方式【GET & POST】实现的几个主要步骤 – 清澈Saup – 博客园.

1.前言

上次,在博客里谈谈了【GET & POST】的区别,这次准备主要是分享一下自己对【GET & POST】的理解和实现的主要步骤。

在这就不多废话了,直接进主题,有什么不足的欢迎大家指出来。

网络访问两种常用方式【GET & POST】的区别

2.GET                             

2.1. 定义URL,确定要访问的地址

NSURL *url = [NSURL URLWithString:urlString];

 

2.2定义URLRequest,确定网络访问请求,在GET方法中直接用URL即可        

这里的参数,主要是为了防止卡死的情况,在最多读取数据时间2秒内给用户答复,提高用户体验!

NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:2.0f];

NSURLResponse *response = nil;

NSError *error = nil;

2.2.1同步请求(应用场景:网银账户的登录)                                            

// 一定要获取到某个网络返回数据后,才能进行下一步操作的场景!

// 发送同步请求,respone&error要带地址的原因就是为了方法执行后,能够方便使用response&error

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

 

2.2.2异步方法

[NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {

    // 块代码的内容会在网络访问后执行

    // 块代码是预先定义好的代码片段,在满足某个条件时执行的。

}];

 

3.POST                            

3.1. 定义URL,确定要访问的地址                           

 

NSURL *url = [NSURL URLWithString:urlString];

 

3.2. 定义请求,生成数据体添加到请求                         

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];

1) 指定网络请求的方法

request.HTTPMethod = @”POST”;

 

2) 生成数据体

 

复制代码
1 // * 先生成字符串
2 
3 NSString *bodyStr = [NSString stringWithFormat:@"username=%@&password=%@", userName, password];
4 
5 // * 将字符串转换成NSData
6 
7 request.HTTPBody = [bodyStr dataUsingEncoding:NSUTF8StringEncoding];
复制代码

 

// 提示:POST请求多用于用户登录,或者上传文件,在实际开发中,“POST请求的参数及地址”需要与公司的后端程序员沟通。

// POST同样具备同步和异步方法,在这里就不做分别实现了。

赞(0) 打赏
分享到: 更多 (0)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏