HTTP:请求消息_请求行_请求头

请求消息数据格式

1、请求行

  • 格式:请求方式 请求url 请求协议/版本
  • 实例:GET /login.html HTTP/1.1
  • 请求方式:HTTP协议存在7种请求方式,主要是GETPOST
  • GET:请求参数在请求行当中,请求url长度有限制,不太安全
  • 例如:http://localhost/demo?username=cnjanus
  • POST:请求参数在请求体当中,请求url长度无限制,相对安全

2、请求头

  • 格式:请求头名称: 请求头值
  • 实例:
Host: localhost
Connection: keep-alive
Content-Length: 16
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4023.0 Safari/537.36 Edg/81.0.396.0
Origin: http://localhost
Content-Type: application/x-www-form-urlencoded
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Referer: http://localhost/login.html
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9,zh-CN;q=0.8,zh;q=0.7
  • 常见的请求头
    User-Agent:浏览器告诉服务器使用的浏览器版本信息(用来解决浏览器的兼容性问题)
    Referer:告诉服务器,当前的请求是从哪里来的
    Referer作用:防止盗取链接,统计工作
    Connection:keep-alive表示可以复用

3、请求空行

  • 空行

4、请求体

  • GET方式无请求体
  • POST类型存在请求体:例如,username=cjd2018

响应消息数据格式

相应行

  • 组成:协议/版本 响应状态码 状态码的描述
  • 实例:HTTP/1.1 200 OK

响应状态码

  • 状态码:都是三位数字,是服务器告诉客户端浏览器本次请求和响应状态的一个状态

分类

  • 1XX:服务器接收客户端消息,但没有接收完成,等待一段时间后,发送1XX的状态码
  • 2XX:成功
  • 3XX:重定向。例如,302(重定向),304(访问缓存)
  • 4XX:客户端错误。例如,404(请求路径没有对应资源),405(请求方式没有对应的doXxx方法)
  • 5XX:服务器端错误。例如,500(服务器端出现异常,异常会展示在页面上)

响应头

  • 格式:头名称

重要的响应头

  • Content-Type:服务器告诉客户端,本次响应体的数据格式以及编码格式。例如,content-type: text/html; charset=UTF-8
  • Content-disposition:服务器告诉客户端,以什么格式打开响应体数据。(默认值是in-line,表示在当前页面内打开;attachment,表示以附件的形式打开响应体)

响应空行

响应体

  • 真实的传输的数据

你可能感兴趣的:(java,web)