http协议

HTTP协议

HTTP(超文本传输协议)是一个基于请求和响应模式,无状态的,应用层的协议,常基于tcp的连接方式,是一个属于应用层的面向对象的协议。HTTP协议工作于客户端/服务器架构之上,浏览器用url向服务器发送请求。

特点:

1.通信速度快: 由于http协议简单,http服务器程序规模小,因而通信速度快
2.灵活:http允许传输任意类型的数据对象,类型由content-type决定
3.无连接:无连接的含义是限制每次连接只处理一个请求。服务端处理完客户的请求,并接收到应答后,即断开连接,可以节省传输时间。请求时建立连接,请求完释放连接,以尽快将资源释放出来服务其他客户。
4.无状态:无状态是指协议对于业务处理没有记忆能力,服务端不知道客户端是什么状态。不需要先前信息时,应答比较快。 优点是缓解了服务器的压力,缺点是每次请求会传输大量重复信息。

保持http连接状态的技术:

cookie和session

http请求消息request:

请求行:请求类型(get/post),请求资源,http版本
请求头:

  • accept-language : 浏览器支持的语言;
  • accept-charset : 浏览器支持的编码
  • accept : 浏览器支持的mime类型
  • accept-encoding : 浏览器支持的压缩编码
  • user-agent : 用户代理,用于让服务端识别客户端和浏览器的信息
  • host : 域名,请求地址
  • connection : keep-alive 。 连接类型,keep-alive代表持久连接

空行
请求体(请求数据)

http响应消息responce:

状态行:200(请求成功),404(请求资源不存在),500(服务器内部错误)
响应头(消息报头):

  • allow: 服务器支持哪些请求方法;
  • content-encoding : 响应文档的编码格式;
  • content-length : 响应内容长度;
  • content-type : 响应文档的mime类型 text/html, text/xml , application/json ;
  • date:当前dmt时间;
  • expires : 表面文档什么时候过期;
  • last-modified : 文档最后修改时间 ;
  • location : 文档定位;
  • refresh : 表面浏览器多久刷新文档 ;
  • server : 服务器名字 ;
  • set-cookie : 设置和页面关联的cookie ;
  • www-authenticate : 授权信息

空行
响应体(响应正文)

你可能感兴趣的:(http协议)