2016 - 1- 22 NSURLConnetction --- GET请求

---恢复内容开始---

一: 给服务器发送一个简单的GET请求

1.同步

    //  发送一个GET请求给服务器

    // 0.请求路径
    NSURL *url = [NSURL URLWithString:@"http://120.25.226.186:32812/login?username=122&pwd=1222"];

    //1.通过路径创建请求对象
    NSURLRequest *request = [NSURLRequest requestWithURL:url];// 默认已经包含请求头了。

    // 2. 发送请求
      // 这个方法是个阻塞式的方法。
    NSDate *data =  [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
    // 将data解析成字符串

     NSString *str= [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
    NSLog(@"----------- data%@",str);

}

 

2.异步请求

    //  发送一个异步的GET请求给服务器

    // 0.请求路径
    NSURL *url = [NSURL URLWithString:@"http://120.25.226.186:32812/login?username=122&pwd=1222"];

    //1.通过路径创建请求对象
    NSURLRequest *request = [NSURLRequest requestWithURL:url];// 默认已经包含请求头了。

    // 2.创建一个线程去发送请求。

    [NSURLConnection sendAsynchronousRequest:request queue:[[NSOperationQueue alloc] init] completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {// 当请求在新的线程中发送并返回了数据data后会来到这个block

        NSString *str= [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
        NSLog(@"----------- data%@",str);
        NSLog(@"%@",[NSThread currentThread]);

    }];

    NSLog(@"------end---");

打印结果:

可以发现返回数据后,Block执行在线程3,而线程2是因为请求是异步的,去执行请求了。

---恢复内容结束---

时间: 2024-10-14 10:58:11

2016 - 1- 22 NSURLConnetction --- GET请求的相关文章

[官方软件] Easy Sysprep v4.3.29.602 【系统封装部署利器】(2016.01.22)--skyfree大神

[官方软件] Easy Sysprep v4.3.29.602 [系统封装部署利器](2016.01.22) Skyfree 发表于 2016-1-22 13:55:55 https://www.itsk.com/forum.php?mod=viewthread&tid=362766&highlight=Easy%2BSysprep [官方软件] Easy Sysprep v4.3.29.602 [系统封装部署利器](2016.01.22) [Easy Sysprep]概述:Easy Sy

“耐撕”团队 2016.3.22 站立会议

时间:2016.03.22 ① :18:00--18:25   ②18:40--19:00   总计45分钟. 成员: Z 郑蕊 * 组长 (博客:http://www.cnblogs.com/zhengrui0452/), P 濮成林(博客:http://www.cnblogs.com/charliePU/), Q 齐嘉亮(博客:http://www.cnblogs.com/dendroaspis-polylepis/), L  刘伟硕(博客:http://www.cnblogs.com/We

2016 - 1- 22 NSURLConnetction --- POST请求

一:与上一篇博客中的GET方法类似  只不过需要多注意,如果要改变请求的类型,需要生成NSMutableURLRequest对象才可以设置请求的类型. NSURL *url = [NSURL URLWithString:@"http://120.25.226.186:32812/login"]; // 创建请求 NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; request.HTTPMet

2016.10.19 小米前端面试 vs 2016.10.22 华为web面试

这次面试还是很值得记录一下的~长了很多姿势. 一共三面,面试官都是MIUI的浏览器部门,感觉面试官都很厉害,知识点问的很细很深入. 一面面试官是个可爱的小姑娘,主要考察的就是常见的前端面试题,很基础,但是会在其上进行拓展和深入.就我记得的一些题做个总结: 1. 说一下CSS的盒模型?(这简直是我参加过的几乎所有前端面试岗必问的一道题目--不管是比较水的国企还是问基础的互联网... 想一想似乎只有只问项目不谈基础的京东没有问吧) 这里是答案 2. 常用的跨域方法:(之前小米一个面试官电话面试时候也

一个运维小白的成长日记(M20-1 2016.7.22)

screen命令: 打开新的screen:         screen -S [SESSION] 加入会话:                screen -x [SESSION] 退出并关闭screen:          exit 剥离当前screen:            Ctrl+a,d 显示所有已经打开的screen:       screen ls 恢复某screen:             screen -r [SESSION] 重点: (1)当使用系统时只有一个screen请

2016 - 1 - 22 HTTP(一)

一:通过URL找到服务器   1. URL的概念: 1.1 URL全称Uniform Resource Locatior 统一资源定位符 1.2 通过一个URL就可以找到互联网上的唯一的资源. 1.3 一个URL对应唯一的互联网资源. 2. URL的基本格式:   协议:// 主机地址/ 路径 如 :http://www.baidu.com/img/logo.png          http://202.108.22.5/img/logo.png 2.1 协议: 不同的协议,代表着不同的资源查

2016/2/22 三级导航

1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="

2016.7.22.noip2012D2

mod: 扩展欧几里德算法,而我没有复习,暴力的60 事后后悔死 classroom: 线段树得90,T两个点.代码与问题如下: 1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 using namespace std; 5 int n,m,s,t; 6 long long r[1000005],d; 7 struct stu 8 { 9 int l,r; 10 long long mi,val; 1

2016 - 1 - 22 HTTP(二)

一: 发送HTTP请求的方法 1.在HTTP/1.1中规定了8种发送请求的方法: 2.发送请求时需要参数,比如POST中的账号密码 二:POST与GET的对比 1.GET与POST的主要区别表现在数据传递上 1.1 GET 在请求URL后面以  ? 的形式跟上发给服务器的参数,多个参数以&隔开.大小有限制,不能超过1kb. 1.2 POST 参数放在请求体中,大小没限制,但具体多大还取决与服务器的性能. 三: POST与GET的选择 1.如果要传递大量数据,比如文件上传,就需要使用POST请求,