HTTP协议
Http协议是一个网络通信协议,基于请求和响应的,无状态的协议
Http协议: 超文本传输协议
通过http协议的URL路径来给后端发送请求信息
请求信息
- 请求: request
- 请求方式: get post
- 请求信息:
- http 1.0/1.1 GET http://localhost:8080/servletDemo1/add
- Accept-Language: zh-CN,zh;q=0.9
Cache-Control: max-age=0
Connection: keep-alive
Cookie: yp_riddler_id=f1288624-41ef-4fef-bf71-2aec5f62f71a;
Host: localhost:8080
Referer: http://localhost:8080/servletDemo1/
Sec-Fetch-Dest: document - 空白
- name=zhangsan
解析:
第一部分: 请求行信息
-
第一行 通信协议 请求方式 URL
-
通信协议: http协议
-
请求方式 : GET POST
-
资源路径: URL 统一资源定位符
第二部分: 请求头信息
- 从第二行开始到空白行为止,以键值对的形式发送给后端
- 请求头信息一般是浏览器发送http协议,自动填充的,主要包含发送的时间,主机信
息,语 言,浏览器相关信息等等
第三部分:空白行
- 分割作用
第四部分: 请求参数
- 只有POST请求时,请求参数才有 一般是以键值对的形式发送给后端
例如:
name=lisi
sex=nan
响应信息 response
响应信息内容:
-
http 1.0/1.1 200 success
-
Content-Length: 322
Content-Type: text/html
Date: Tue, 12 Jan 2021 07:28:03 GMT
ETag: W/“322-1610434582694”
Last-Modified: Tue, 12 Jan 2021 06:56:22 GMT -
< html>
-
< head>
< meta charset=“UTF-8”>
< title>Insert title here< /title>
< /head>
< body>
< form action=“login” method=“get”>
账号:< input type=“text” name=“username” >< br/>
密码:< input type=“password” name=“password”>< br/>
< input type=“submit” value=“登录”>
< /form>
< /body>
< /html>
响应内容详情:
第一部分: 响应行
第一行 : http 1.0/1.1 200 success
通信协议: http
响应状态码: 200
1xx 请求发送失败或响应出错
2xx 请求发送成功,响应成功 200
3xx 请求转发或重定向 304
4xx 请求资源找不到
404 (资源找不到) 405(请求方式对应的方法未找到)
5xx 服务器错误 500
状态码的英文解释: success | error
第二部分: 响应头
从第二行到空白行之间,内容以键值对的形式保存,其中包含了 响应的内容长度,响应的内容类型,
响应的时间等等…
第三部分: 响应空行
分割线
第四部分: 响应体
响应体 : 响应的主要内容,一般响应的主体是网页源代码[html jsp …]