HTTP请求

>1HTTP协议:超文本传输协议(Hypertext Transfer Protocol)
     <1>HTTP协议规定了客户端和服务器之间的数据传输格式;
     <2>HTTP协议是在网络开发中最常用的协议.不管是移动客户端还是PC端,访问网络资源最常使用的协议
     <3>优点     
          >1简单快速;
          >2灵活:可以传输任意类型的数据;
          >3http协议是短连接:服务器一次连接只处理一个请求,节省资源;
>2HTTP协议的使用:
     <1>请求:客户端向服务器索要数据,一个请求包含请求行,请求头,请求体三个部分;
          "GET /resources/images/ HTTP/1.1" 
          >1请求行:包含请求方法,资源路径,协议版本.
           "Accept: text/html // 客户端所能接收的数据类型
       
"Accept-Language: zh-cn // 客户端的语言环境
       
"Accept-Encoding: gzip // 客户端支持的数据压缩格式
       
"Host: m.baidu.com // 客户端想访问的服务器主机地址
        "User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:37.0) Gecko/20100101 Firefox/37.0 // 客户端的类型,客户端的软件环境
          >2请求头:包含对客户端的环境描述
          >3请求体:客户端发送给服务器的具体数据,如图片/文件/参数等;
     <2>响应:服务器返回客户端想要的数据,一个响应包含”状态行”,”响应头”,”实体内容”三个部分:
           "HTTP/1.1 200 OK"
          >1状态行包括协议版本,状态码,状态英文名称;
           "Content-Encoding: gzip // 服务器支持的数据压缩格式
       
"Content-Length:  1528 // 返回数据的长度
       
"Content-Type:  application/xhtml+xml;charset=utf-8 // 返回数据的类型
       
"Date: Mon, 15 Jun 2015 09:06:46 GMT // 响应的时间
        "Server: apache  // 服务器类型
          >2响应头:对服务器端环境的描述;
          >3实体内容:服务器返回给客户端的具体内容,如图片/xml/json;
>3发送HTTP请求:
     <1>苹果原生:
          >1NSURLConnection:用法简单,在主线程执行;
          >2NSURLSession:iOS7以后推出的技术,功能比NSURLConnection更加强大;
          >3CFNetwork:NSURL的底层,纯C语言,一般不用;
     <2>第三方框架
          >1ASIHTTPRequest:功能很强大,可是已经停止更新;
          >2AFNetworking:简单易用,提供了基本够用的常见功能,维护和使用者较多;
          >3MKNetworkKit:简单易用,产自印度,维护和使用者少;
>4URL中所有字符都是ASCII码,不能出现空格以及中文等特殊符号,如果出现中文,需要添加百分号转译,
urlStr = [urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值