简单介绍HTTP的请求(get请求和post请求)以及对应的响应的内容

时间:2024-08-29 18:34:44

链接解析:

https://oa.hbgf.net.cn/login.jsp;jsessionid=47084322738F8DB18D60752944DFD1AA

http或者https表示使用的是http协议还是https协议,后面跟的是域名,往后到?之前叫路径,?之后叫参数

http://域名//路径//?参数

多个参数用&符号连接

消息头

请求网址:https://oa.hbgf.net.cn/resource/js/base64.js?s_cache=1575255899708

请求方法:Get

远程地址:221.230.3.228:443

状态码:200 ok

版本:HTTP/1.1

请求方法

Get:请求获取request-URI所标识的资源

POST:在request-URI所标识的资源后附加新的数据

HEAD:请求获取由Request-URI所标识的资源的响应消息报头

PUT:请求服务器存储一个资源,并用Request-URI作为其标识

DELETE:请求服务器删除Request-URI所标识的资源

TRACE:请求服务器回送收到的请求信息,主要用于测试或诊断

CONNECT:保留将来使用

OPTIONS:请求查询服务器的性能,或者查询与资源相关的选项和需求

举例

Post方法:要求被请求的服务器接收附在请求后面的数据,常用于提交表单。

Requests由三部分组成:请求,请求报头,请求正文

有的浏览器请求头的上面会有一行GET 。。。叫做请求行

请求行:GET  /.html  HTTP/1.1

请求

Accept:

*/*

Accept-Encoding

:gzip, deflate, br

Accept-Language

:zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2

Connection:

keep-alive

Cookie:

route=4ded6ae40558cd54d12e1621…84322738F8DB18D60752944DFD1AA

Host:

oa.hbgf.net.cn

Referer:

https://oa.hbgf.net.cn/login.j…084322738F8DB18D60752944DFD1AA

User-Agent:

Mozilla/5.0 (Windows NT 6.1; W…) Gecko/20100101 Firefox/60.0

各个请求头字段的含义:

Accept:用于告诉服务器,客户机支持的数据类型

Accept-Charset:告诉服务器客户机采用的编码

Accept-Encoding:告诉服务器客户机支持的数据压缩格式

Accept-Language:告诉服务器客户机所使用的语言

Host:告诉服务器,想要访问的主机名字

If-Hodified-Since:通过这个告诉服务器,资源的缓存时间

Referer:告诉服务器它是通过哪个资源来访问服务器的(防盗链)

User-Agent:客户机通过这个告诉服务器,客户机的软件环境,浏览器版本

Cookie:通过这个向服务器带数据

HTTP响应也包含三部分:状态行,消息报头,响应正文

状态行:用于描述服务器对请求的处理结果。

消息头/响应:用于描述服务器的基本信息,以及数据的描述,服务器通过这些数据的描述信息,可以通知客户端如何处理等会它回送的数据。

响应正文:代表服务器向客户端回送的数据

状态行:HTTP/1.1 200 OK

响应

Accept-Ranges

bytes

Access-Control-Allow-Origin

*

Cache-Control:

max-age=604800

Connection:

keep-alive

Content-Length:

3075

Content-Type:

application/javascript

Date:

Fri, 13 Dec 2019 08:36:43 GMT

ETag:

W/"3075-1575190034000"

Expires:

Mon, 09 Dec 2019 03:04:59 GMT

Last-Modified:

Sun, 01 Dec 2019 08:47:14 GMT

Server:

nginx

响应数据

html{ height:100%;}

body.tTemplate{

background:url(../images/body_bg.png) no-repeat right 50px #f7f7f7;

}

响应头各字段的含义:

Location:这个头配合302状态码使用,用于告诉客户找谁

Server:服务器通过这个头,告诉浏览器服务器的类型

Content-Encoding:数据压缩格式

Content-Length:告诉浏览器回送的数据长度

Content-Type:告诉刘拉起服务器回送的数据类型

Last-Modified:告诉浏览器当前资源缓存时间

Refresh:告诉浏览器隔多长时间刷新一次

Content-Disposition:告诉浏览器以下载方式打开数据

Transfer-Encoding:告诉浏览器数据传送格式

ETag:缓存相应的头

Expires:服务器通过这个头,告诉浏览器把回送的资源缓存多长时间,-1或0,则不缓存

Catch-Control:no-cache

Pragmatic:no-cache

通过上面两个头,控制浏览器要不要缓存数据

Connection:

keep-alive,保持连接,意思是不需三次握手可以直接发请求。

Connection:

close,每次发请求都要三次握手。

状态码

100-199:表示成功接收请求,要求客户端继续提交下一次请求才能完成整个处理过程

200-299:标识成功接收请求并已完成整个处理过程,常用200

300-399:为完成请求,客户端进一步细化请求,例如,请求的资源已经移动一个新地址:常用302、307、304

400-499:客户端的请求有错误,常用404,请求链接不存在

500-599:服务器错误