HTTP-GET-POST

URL(全称:Uniform Resource Locator 统一资源定位符)

通过一个URL,能找到互联网上唯一的一个资源

URL就是资源的地址、位置,互联网上的每一个资源都有自己唯一的URL

URL的基本格式:协议(http)://主机地址/路径  (例如:http://www.58.com/img/logo.png)

                      //协议:不同的协议,代表着不同的资源查找方式,资源传输方式

                      //主机地址:存放资源的主机(服务器)的IP地址(域名)

                      //路径:资源在主机(服务器)中的具体位置

URL中常见的协议:

HTTP(超文本传输协议):访问的是远程的网络资源,格式是http:// (最常用)

file:访问的是本地计算机上的资源,格式是file://(不用加主机地址)

mailto:  访问的是电子邮件的地址,格式是mailto:

FTP:访问的是共享主机的文件资源,格式是ftp://

HTTP:

http协议简单,服务器程序规模小,因而通信速度很快,允许传输各种各样的数据

http0.9和1.0版本属于非持续连接,限制每次连接只处理一个请求,服务器对客户端的请求做出响应后,马上断开连接,这种方式可以节省传输时间,而现在则使用1.1版本,属于持续连接。

发送HTTP请求的方法:GET / POST (最常用)

GET:

在请求URL后面以?的形式跟上发给服务器的参数,多个参数之间用&隔开,例如:

http://www.test.com/login?username=123&pwd=234&type=JSON

由于浏览器和服务器对URL长度有限制,因此在URL后面附带的参数是有限制的,通常不能超过1KB

POST:

发给服务器的参数全部放在请求体中

理论上,post请求的数据量是没有限制的(具体还要看服务器的处理能力)

GET和POST的选择:

如果要传递大量数据,比如文件上传,只能用post请求

get的安全性比较差,包含机密或敏感信息,建议post请求

如果仅仅是索取数据(数据查询),建议用get

如果是增加数据,修改,删除数据,建议用post

GET和POST区别:

1. get 是从服务器上获取数据,post是向服务器传送数据

2. get是把参数数据队列加到提交表单的ACTION属性所️的URL中,值和表单内各个字段--对应,在URL中可以看到,post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。

3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。

4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制,但理论上,IIS4中最大量为80KB,IIS5中为100KB。

5. get安全性非常低,post安全性较高,但是执行效率却比post方法好。

建议:

1. get方式的安全性较post方式要差些,包含机密信息的话,建议用post数据提交方式

2. 在做数据查询时,建议用get方式,而在数据添加,修改或删除时,建议用post方式

HTTP-GET-POST_第1张图片
HTTP-GET-POST_第2张图片
HTTP-GET-POST_第3张图片

iOS中发送HTTP请求的方案:

苹果自带:

NSURLConnection:用法简单,最古老最直接最经典的一种方案(坑比较多)

NSURLSession:功能比NSURLConnection更强大,苹果目前比较推荐使用这种技术

CFNetWork:NSURL的底层,纯C语言

第三方框架:

ASIHttpRequest:外号“HTTP终结者”,功能极其强大,可惜早已停止更新

AFNetWorking:简单易用,提供了基本够用常用的功能

你可能感兴趣的:(HTTP-GET-POST)