您的位置:首页 > 理论基础 > 计算机网络

HTTP请求

2016-05-01 16:22 288 查看
>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];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: