设为首页 加入收藏

TOP

iOS UI高级之网络编程(HTTP协议)
2015-07-16 12:56:42 来源: 作者: 【 】 浏览:57
Tags:iOS 高级 网络编程 HTTP 协议


?
URL的请求方式
网络请求方式有两种:GET 和 POST
两种方式的相同点是:
都能给服务器传输数据
两种请求方式的不同点是:
1、给服务器传输数据的方式:
  GCT:通过网址字符串
  POST:通过data
2、传输数据的大小:
  GET:网址字符串最多255字节
  POST:使用NSData,容量超过1G
3、安全性:
  GET:所有传输给服务器的数据,显示在网址里,类似于密码的明文输入,直接可见
  POST:数据被转成NSData(二进制数据),类似于密码的密文输入,无法直接读取
?
连接方式
同步连接:程序容易出现卡死现象
异步链接:等待数据返回
异步链接有两种实现方式:
  设置代理,接受数据
  实现block
?
同步连接
同步连接请求可以让你能够从因特网请求数据,一旦发送同步请求后,程序将停止用户交互,直至服务器返回数据完成才可进行下一步操作。
?
[img]http://www.cppentry.com/upload_files/article/54/1_pi91u__.png[/img]
首先我们建立一个TableViewController视图控制器在方法viewDidLoad里面我们将将网址字符串转成NSURL对象,然后根据NSURL对象创建NSURLRequest请求对象,然后建立同步链接,再通过jeson解析信息
[img]http://www.cppentry.com/upload_files/article/54/1_xd2wh__.png[/img]
?
异步连接
?同步连接会让程序出现“卡死”现象,导致用户交互不友好,而异步链接正好改变了这一弊端,异步连接不会阻塞主线程,而会建立一个新的线程来操作,因此用户在发送出异步请求后依然可以对UI进行操作,程序可以继续进行。
?
异步连接(代理)
设置NSURLConnection代理
实现相应的代理方法:开始响应接受数据、接收数据 、成功、失败



?

?
?
创建了URL,指定代理之后,代理中的相应方法实现如下:



?
异步连接(block)
?

?


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Python 正则分析Nginx日志 下一篇Objective-C 编码规范

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: