17-2 网络编程

本文介绍了HTTP协议的基本概念,客户端/服务器(C/S)及浏览器/服务器(B/S)模式的工作原理。详细解释了网络请求的过程,包括TCP连接的建立与断开、请求方式(GET与POST)的区别、连接方式(同步与异步)的选择及其实现方法。
1.HTTP协议的概念

Hyper Text Transfer Protocol(超文本传输协议)是用于从万维网服务器传送超文本到本地浏览器的传输协议,HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。
#####2.C/S模式
Client和Server常常分别处在相距很远的两台计算机上,Client程序的任务是将用户的要求提交给Server程序,再将Server程序返回的结果以特定的形式显示给用户;Server程序的任务是接收客户程序提出的服务请求,进行相应的处理,再将结果返回给客户程序。
B/S模式:弥补C/S的不足

3.怎么进行网络请求?(面试)

HTTP协议整个请求过程


(1).先建立TCP连接,“3次握手”;
(2).根据网址(NSUrl网址其实就是我们所需要的数据在服务器端存储的位置)向服务器端发送请求(NSUrlRequest);
请求一般包含请求头(一般不用咱们做改动),请求体(这里能看到的就是POST,请求时候需要咱们给参数)
请求一般实际用到两种请求方式(GET和POST),
GET:一般情况下,都是将参数拼接在网址后面,
*但是不是将参数拼接在网址后面的就是GET请求*
GET请求一般能传递大小为255字节,由于它是将参数拼接在网址后面,其他人员可以看到该参数,故安全性较差。
POST:在实际代码中使用的是子类(NSMutableURLRequest),是将参数转换为NSData类型,发送给服务器,一般不是直接拼接在网址后面,它可以传输的数据理论上是无限的,安全性较好。
(3).发送请求,建立客户端和服务器的连接(NSURLConnection);
连接的方式分为2种:同步和异步
同步: 当建立同步连接的时候,当请求没有返回数据的时候,那么其他的操作都不能进行,如果是在代码中,同步请求未结束,它底下的代码不会执行。
异步:异步连接,在数据未返回的时候,可以进行其他操作,在代码中的体现就是,发送了请求之后,即使数据未返回,它底下的代码也可以执行。
异步的实现方式有2种:一种是通过代理,另一种是block回调。
(4).得到服务器的返回(NSUrlResponse),返回也会包括响应头,响应体(实际上我们所需要的数据)。
(5).断开TCP连接,“4次挥手”

总结

实现网络编程4部分: 定义网址,请求,连接,返回数据(解析)
请求方式:GET,POST
连接方式:同步、异步
异步实现方法:Block、delegate
也就是“222”;

网络请求的步骤:1、NSURL;2、NSURLRequest;3、NSURLConnection;4、处理Error或者返回数据(该数据已经解析过)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值