HTTP的通信的 发送请求、接收响应 包含哪些内容?OC中是怎样实现的?

来源:互联网 发布:淘宝网睡衣清仓特价 编辑:程序博客网 时间:2024/05/02 00:22

HTTP的通信的 发送请求、接收响应 包含哪些内容?OC中是怎样实现的?

请求:
一个请求包含以下内容:
  请求行:包含了请求方法、请求资源路径、HTTP协议版本
GET/MJServer/resources/images/1.jpg HTTP/1.1
请求头:

包含了对客户端的环境描述、客户端请求的主机地址等信息
Host:192.168.1.105:8080   // 客户端想访问的服务器主机地址
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9) Firefox/30.0
// 客户端的类型,

客户端的软件环境
Accept:text/html, */*   // 客户端所能接收的数据类型
Accept-Language:zh-cn   // 客户端的语言环境
Accept-Encoding:gzip   // 客户端支持的数据压缩格式
请求体:

客户端发给服务器的具体数据,比如文件数据


OC中请求用NSURLRequest
 
NSURLRequest
    发送给服务器的请求包含:
    请求行:包含了请求方法、请求资源路径、HTTP协议版本
           请求头:  对客户端的环境描述、客户端请求的主机地址等信息
           请求体:  客户端发给服务器的具体数据
          默认超时时常:60s
响应:
一个响应包括:
  状态行:包含了HTTP协议版本、状态码、状态英文名称
HTTP/1.1 200OK
响应头:包含了对服务器的描述、对返回数据的描述
Server:Apache-Coyote/1.1   // 服务器的类型
Content-Type:image/jpeg   // 返回数据的类型
Content-Length:56811   // 返回数据的长度
Date: Mon, 23Jun 2014 12:54:52 GMT  // 响应的时间
实体内容:服务器返回给客户端的具体数据,比如文件数据
   OC中响应用NSURLRespose
         NSURLRespones
         返回给客户端的回应包含:
         状态行 : 包含了HTTP协议版本、状态码、状态英文名称
         响应头 : 包含了对服务器的描述、对返回数据的描述
         实体内容:服务器返回给客户端的具体二进制数据
 
         常用属性:  expectedContentLength (下载时返回文件的长度)
                      suggestedFilename(建议保存的文件名) 

0 1