Java——HTTP协议

一、概念:超文本传输协议;

二、作用:规范了浏览器和服务器的数据交互;

三、HTTP交互流程:

(1)客户端和服务端建立连接;

(2)客户端发送请求数据到服务端;

(3)服务端接收到请求后,进行处理,然后将处理结果响应到客户端;

(4)关闭客户端和服务端的连接;(HTTP1.1后不会立即关闭)

四、HTTP请求格式:

  1.请求行:请求方式、请求地址、HTTP版本协议;//3个字段用空格分隔;//GET /data/info.html HTTP/1.1

  2.请求头:消息报头,一般用来说明客户端要使用的一些附件信息;

  3.空行:位于请求头和请求数据之间,空行是必须的;

  4.请求数据:非必须的;//get没有请求主体,post有请求主体;

五、请求方法:

(1HTTP1.0: GET(查询)POST(添加)HEAD。

(2HTTP1.1新增:OPTIONS、PUT(修改)DELETE(删除)TRACE、CONNECT。

 3get和post的区别:

分类

get

post

数据安全

不安全

安全

数据量

4k

不限制

速度

并发量

 

数据共享性

不支持

支持

数据交互方式

地址栏

form data

六、HTTP响应格式:

  1.响应行:HTTP版本、状态码、状态信息;

  2.响应头:消息报头,客户端使用的附加信息;

  3.空行:位于响应头和响应实体之间,空行是必须的;

  4.响应实体:正文,服务器返回给浏览器的信息;

七、状态码:由三个十进制数字组成,第一个十进制数字定义了状态码的类型

(1)状态码分类;(2)状态码列表

八、HTTP content-type 对照表

九、请求头/响应头内容解释:

1)请求头:

//接纳的资源的类型(xml/json)

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3

//资源的压缩类型

Accept-Encoding: gzip, deflate, br

//资源的语言环境

Accept-Language: zh-CN,zh;q=0.9

//缓存控制器

Cache-Control: max-age=0

//连接状态

Connection: keep-alive

//当前访问的主机

Host: www.baidu.com

//用户浏览器的标示

User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64)

AppleWebKit/537.36 (KHTML, like Gecko)

Chrome/74.0.3729.157 Safari/537.36

2)响应头:

//资源的接收类型

accept-ranges: bytes

//最大响应时间,单位毫秒

age: 944687

//缓存的最大生命周期,毫秒

cache-control: max-age=2592000

//内容的压缩格式

content-encoding: gzip

//内容类型

content-type: application/x-javascript

//当前服务器返回的时间

date: Mon, 13 May 2019 07:56:49 GMT

//最后修改时间

last-modified: Wed, 13 May 2015 05:30:46 GMT

//响应编码

status: 200

 

猜你喜欢

转载自www.cnblogs.com/Tractors/p/11260348.html