Demo_1 NSRULConnection

NSRULConnection

苹果公司在ios8已经抛弃了,但是我还是要讲一下,因为这和后面的NSSession有着密切的联系

下面开始使用步骤:

1.     创建发送的请求

NSRequest 在这个请求中要加入你要访问的URL,其实这就是一种包装,将URL放在请求中

2.     接受放回来得数据

使用connectionWithRequest 方法将返回一个NSData类型的数据

Demo如下

//这里的url是一个网页地址

self.url=[NSURL URLWithString:self.urlTextField.text];

//创建NSURLRequest

NSURLRequest *request=[NSURLRequest requestWithURL:self.url];

//使用NSURLConnection发送同步请求

NSError *error=nil;

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

//显示到webView上

[self.webView loadData:returnData MIMEType:@"text/html" textEncodingName:@"utf-8" baseURL:self.baseURL];

重要的是其中封装信息的思想

self.url=[NSURL URLWithString:self.urlTextField.text];

NSURLRequest *request=[NSURLRequest requestWithURL:self.url];

//发送异步请求

NSOperationQueue *queue=[[NSOperationQueue alloc]init];

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

//子线程执行

//获取response中的状态码(200/404/500/....)

NSInteger statusCode = [(NSHTTPURLResponse*)response statusCode];//这里格式要做转换

if (statusCode==200) {

//返回成功

NSLog(@"返回成功");

//回到主线程加载到webview 凡是UI的都要放到主线程执行

dispatch_async(dispatch_get_main_queue(), ^{

[self.webView loadData:data MIMEType:@"text/html" textEncodingName:@"utf-8" baseURL:self.baseURL];

});

}else{

NSLog(@"失败:%@",connectionError.userInfo);

}

}];

}

思路总结:

1.建立请求

2.发送请求

3.接受放回数据

NSURLConnect 的简单实用(iOS8淘汰)的更多相关文章

  1. jQuery的几种简单实用效果

    许久未分享博客,或许已生疏. 闲来无事, 分享几个jQuery简单实用的效果案例 不喜勿喷... 1.页面常用的返回顶部 <!DOCTYPE html> <html lang=&qu ...

  2. 经验分享:10个简单实用的 jQuery 代码片段

    尽管各种 JavaScirpt 框架和库层出不穷,jQuery 仍然是 Web 前端开发中最常用的工具库.今天,向大家分享我觉得在网站开发中10个简单实用的 jQuery 代码片段. 您可能感兴趣的相 ...

  3. 简单实用的PHP防注入类实例

    这篇文章主要介绍了简单实用的PHP防注入类实例,以两个简单的防注入类为例介绍了PHP防注入的原理与技巧,对网站安全建设来说非常具有实用价值,需要的朋友可以参考下   本文实例讲述了简单实用的PHP防注 ...

  4. php简单实用的操作文件工具类(创建、移动、复制、删除)

    php简单实用好用的文件及文件夹复制函数和工具类(创建.移动.复制.删除) function recurse_copy($src,$dst) {  // 原目录,复制到的目录 $dir = opend ...

  5. 基于Bootstrap简单实用的tags标签插件

    http://www.htmleaf.com/jQuery/ jQuery之家 自由分享jQuery.html5和css3的插件库 基于Bootstrap简单实用的tags标签插件

  6. C#_简单实用的翻页

    简单实用的生成翻页HTML辅助类 C# using System.Text; namespace ClassLibrary { /// <summary> /// /// </sum ...

  7. 简单实用的Windows命令(一)

    前几天新买了一台笔记本电脑,使用了一下几个简单的查看电脑配置的命令,觉得非常的不错,在此记录一下 一:运行命令的方式有两种 1:使用快捷键WIN+R,然后在弹出的“运行”对话框中输入对应的命令 2:在 ...

  8. 简单实用的Windows命令(二)

    昨天简单的记录了几个非常简单实用的Windows命令,不过我又想起来还有两个我在实际的工作中也是经常用到的命令——PING和IPCONFIG,不过我在工作中的使用都是非常简单的,用PING命令检测对应 ...

  9. iOS边练边学--多线程介绍、NSThread的简单实用、线程安全以及线程之间的通信

    一.iOS中的多线程 多线程的原理(之前多线程这块没好好学,之前对多线程的理解也是错误的,这里更正,好好学习这块) iOS中多线程的实现方案有以下几种 二.NSThread线程类的简单实用(直接上代码 ...

随机推荐

  1. Linux内核中常见内存分配函数(一)

    linux内核中采 用了一种同时适用于32位和64位系统的内存分页模型,对于32位系统来说,两级页表足够用了,而在x86_64系 统中,用到了四级页表. * 页全局目录(Page Global Dir ...

  2. vmware虚拟机迁移导致的eth0消失问题

    将原来的ubuntu虚拟机文件迁移到还有一台机子之后. ifconfig显示仅仅有一个lo网卡,网上找了一些文章.大多是改动/etc/network/interfaces 原来内容是 # ###### ...

  3. jquery ajax调用

    client: <script type="text/javascript" language="javascript"> function jqu ...

  4. Lua与C++的交互

    这篇文章说的挺详细的:Lua与C++的交互

  5. 众数问题(为什么只能输入一组数据,不能输入m组数据)

    描述 所谓众数,就是对于给定的含有N个元素的多重集合,每个元素在S中出现次数最多的成为该元素的重数, 多重集合S重的重数最大的元素成为众数.例如:S={1,2,2,2,3,5},则多重集S的众数是2, ...

  6. Qt QtableView使用

    ui->setupUi(this); ui->mainToolBar->hide(); tableView = new QTableView(this); // 设置表头 QStan ...

  7. 浅谈C中的指针和数组(六)

    数组和指针,原本不想在写了,觉得这部分差不多了,但是自己在写程序的时候还是发现了一个错误.首先说一下我的要求: 给一个函数传递一个二维数组,然后我想在这个函数里面计算这个数组的行数. 写个类似的错误D ...

  8. echarts的使用总结;

    题外话:好久没来博客园了,这几个月自己的工作经历可以算是相当丰富,其实一直不知道自己做web前端能做到什么时候,但是想说既然现在还在做着这个职位,就好好的学习.之前很少写js代码,来了新公司大多数都是 ...

  9. 使用mysql_query()方法操纵数据库以及综合实例

    1.利用insert 语句添加记录 <? require('conn.php'); mysql_query( "insert into lyb ( title, content, au ...

  10. uvalive5810 uva12368 Candles

    题意:每组数据给出n个数,每个数在1-100,问组成这些数的蜡烛的权值的最小值.权值=把选的蜡烛从大到小排列组成的数 组成方式:比如有1 3两个蜡烛 可以组成13(1和3)或4(1+3) 只有一个加号 ...