iOS UI高级之网络编程(HTTP协议)

HTTP协议的概念mysql

HTTP协议,Hyper Text Transfer Protocol (超文本传输协议)是用于从万维网服务器传送超文本到本地浏览器的传输协议,HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型sql

 

了解C/S模式编程

Client(客户端)和Server(服务器)经常分别处在相距很远的两台计算机上,Client程序的任务是将用户的要求提交给Server程序,再将Server程序返回的结果以特定的形式显示给用户;Server程序的任务是接受客户程序提出的服务请求,进行相应的处理,再将结果返回给客户程序浏览器

 

iOS实现网络编程安全

 

HTTP协议请求如何实现服务器

网络请求地址对象NSURL的做用及用法网络

网络请求对象NSURLRequest、NSMutableURLRequest的做用和用法异步

网络连接对象NSURLConnenction的做用及用法学习

网路连接协议NSURLConnectionDataDelegate的做用及用法url

网络请求数据信息NSURLResponse的做用及用法

 

网络链接中所用到的类

咱们将在后面的学习过程当中遇到五个关于网络链接的类分别是:NSURL, NSURLRequest, NSMutableURLRequest, NSURLResponse, NSError.

NSURL:这个类封装了一个网络路径。

NSURLRequest:咱们将经过这个类设置一些网络的请求信息。

NSMutableURLRequest:这个类是NSURLRequest的子类,能够设置一些请求参数

NSURLResponse:这个类能够接受一些从服务器返回的信息

NSError:这个类包含了咱们在网络请求中遇到的错误信息

 

NSURL

url,统一资源定位符,也称为网址,因特网上标准的资源网址

一个典型的url:http://lily:123456@www.baidu.com/search?hl=en&source=hp&q=mysql&aq=f&oq=&aqi=g10#page

url的符语法: 协议://受权/路径?查询              注释:url中网址后面的路径服务器中的文件夹 ?后面跟的是参数,多个参数时经过&(and)连接 

协议:ftp://(文本传输协议) http://(超文本传输协议)

https://(安全超文本传输协议) file://(本地文件协议)

 

URL的请求方式

网络请求方式有两种:GET 和 POST

两种方式的相同点是:

都能给服务器传输数据

两种请求方式的不一样点是:

一、给服务器传输数据的方式:

  GCT:经过网址字符串

  POST:经过data

二、传输数据的大小:

  GET:网址字符串最多255字节

  POST:使用NSData,容量超过1G

三、安全性:

  GET:全部传输给服务器的数据,显示在网址里,相似于密码的明文输入,直接可见

  POST:数据被转成NSData(二进制数据),相似于密码的密文输入,没法直接读取

 

链接方式

同步链接:程序容易出现卡死现象

异步连接:等待数据返回

异步连接有两种实现方式:

  设置代理,接受数据

  实现block

 

同步链接

同步链接请求可让你可以从因特网请求数据,一旦发送同步请求后,程序将中止用户交互,直至服务器返回数据完成才可进行下一步操做。

 

首先咱们创建一个TableViewController视图控制器在方法viewDidLoad里面咱们将将网址字符串转成NSURL对象,而后根据NSURL对象建立NSURLRequest请求对象,而后创建同步连接,再经过jeson解析信息

 

异步链接

 同步链接会让程序出现“卡死”现象,致使用户交互不友好,而异步连接正好改变了这一弊端,异步链接不会阻塞主线程,而会创建一个新的线程来操做,所以用户在发送出异步请求后依然能够对UI进行操做,程序能够继续进行。

 

异步链接(代理)

设置NSURLConnection代理

实现相应的代理方法:开始响应接受数据、接收数据 、成功、失败

 

 

 

建立了URL,指定代理以后,代理中的相应方法实现以下:

 

异步链接(block)

 

 

 

相关文章
相关标签/搜索