一、定义 http(Hyper Text Transfer Protocol):超文本传输协议 二、作用 数据传输 三、概念 HTTP消息: 1.客户端发向服务器的请求消息 2.服务器回给客户端的响应消息 客户端和服务器之间的信息交换过程 1.客户端和服务建立连接 2.客户端向服务器发送请求 3.服务器对客户端进行响应 4.断开连接 http协议的特点: 1.HTTP协议是一个 无状态的协议 2.HTTP 1.1支持连续连接,一次连接可以发送多个请求   、消息的基本格式 1.请求消息的基本格式 一个请求行 请求方式 资源路径 HTTP版本号 多个请求头 一个空行 请求实体   2.响应消息的基本格式 一个状态行 HTTP版本号 http状态码 http状态描述 若干应答头 一个空行 响应实体   servlet: 一、什么是servlet? servlet = server applet   二、servlet本质 本质上是java代码,和以前写的java代码有些许的不同: 1.实现了特殊的接口、或继承了特殊的java类 2.servlet不能由程序员去执行,由支持servlet的web服务器运行 3.一个Servlet负责对应的一个或一组URL访问请求,并返回相应的响应内容。   三、servlet的运行流程 1.浏览器在地址栏中指定url,发起一个请求 2.服务器根据url的内容,进行解析,找到对应的servlet 3.serlvet执行代码,并返回数据给服务器 4.服务器将数据返回给浏览器 5.浏览器解析数据,展示数据         HTTP补充: 一个基本的HTTP请求包括: 一个请求行、若干请求头(消息头)、实体内容 • 请求行格式: 请求方式 资源路径 HTTP版本号 • 几种的请求方式: – GET 请求获取由Request-URI所标识的资源 – POST 在Request-URI所标识的资源后附加新的数据 – HEAD 请求获取由Request-URI所标识的资源的响应消息报头 – DELETE 请求服务器删除由Request-URI所标识的资源 – TRACE 请求服务器回送收到的请求信息,主要用于测试或诊断 – PUT 请求服务器存储一个资源,并用Request-URI作为其标识   通用消息头---既可以用于请求消息、又可用于响应 消息
  • Connection:用于指定处理完本次请求/响应后,是否还要 继续保持连接。
  • Date:产生当前消息的时间。
  • Pragma:no-cache.
  • Cache-Control:指示浏览器或服务器缓存的具体策略
  • Content-Length:表示(请求/响应)正文的长度
  请求头
  • Accept:浏览器可接受的MIME类型。
  • Accept-Charset:浏览器可接受的字符集。
  • Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。 Servlet能够向支持gzip的浏览器返回经gzip编码的HTML页面。许多情形 下这可以减少5到10倍的下载时间。
  • Accept-Language:浏览器所希望的语言种类,当服务器能够提供一种以 上的语言版本时要用到。
  • Connection:表示是否需要持久连接。
  • Content-Length:表示请求消息正文的长度。
  • Host:初始URL中的主机和端口。
  • Referer:包含一个URL,用户从该URL代表的页面出发访问当前请求的页 面。
  • User-Agent:浏览器类型,如果Servlet返回的内容与浏览器类型有关则 该值非常有用。
  响应头
  • Allow 服务器支持哪些请求方法(如GET、POST等)
  • Server 处理请求的原始服务器的软件信息
  • Location 表示客户应当到哪里去提取文档。
  • Refresh:告诉浏览器过n秒后自动刷新页面
  • Content-Type 表示实体文档属于什么MIME类型。
  • Content-Length 返回的实体内容的长度
  • Last-Modified 文档的最后改动时间。
  • Content-Location:实体所在的实际位置路径
  Get请求和Post请求有何不同? • Get请求 1.请求的数据会附在URL之后,以?分割URL和传输数据,多个参数用& 连接。 2.特定浏览器和服务器对URL长度有限制,例如IE对URL长度的限制是 2083字节(2K+35)。 • Post请求 1.没有缓存,请求信息不会在地址栏中出现,这样很安全 2.请求信息会储存在请求实体内容,理论上没有大小限制,这样就保 证了不会出现请求信息过长而响应错误的信息。  
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄