请求消息详解(请求头、get、post、请求体)

简述
  我们在servlet的service方法中有两个参数,分别是ServletRequest和ServletResponse,如果想掌握这两个参数,我们必须对请求消息和响应消息有个深入的理解。

请求消息
  请求消息本质上就是客户端告诉服务器的一些信息。

请求消息由请求行、请求头、请求空行、请求体组成。

像这样就是一个完整的请求消息

POST /login.html HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
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
Accept-Encoding: gzip, deflate
Referer: http://localhost/login.html
Connection: keep-alive
Upgrade-Insecure-Requests: 1
请求行
  请求方式 请求url 请求协议/版本
  例: GET /login.html HTTP/1.1

* 请求方式:
  * HTTP协议有7中请求方式,常用的有2种
  * GET:
  1. 请求参数在请求行中,在url后。
  2. 请求的url长度有限制的
  3. 不太安全
  * POST:
  1. 请求参数在请求体中
  2. 请求的url长度没有限制的
  3. 相对安全

如果面试问你,get请求和post请求有什么区别,那么请看超人:https://www.cnblogs.com/logsharing/p/8448446.html

请求头
  格式:请求头名称: 请求头值

例: Host: localhost

注意值有多个的情况下值用逗号隔开

例如这样就是一个整个的请求头

Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
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
Accept-Encoding: gzip, deflate
Referer: http://localhost/login.html
Connection: keep-alive
Upgrade-Insecure-Requests: 1
  常见的请求头:

1.User-Agent:浏览器告诉服务器,我访问你使用的浏览器版本信息,可以在服务器端获取该头的信息,解决浏览器的兼容性问题

2.Accept: 我作为浏览器可以解析哪些文件

3.Referer:http://localhost/login.html : 告诉服务器,我(当前请求)从哪里来?可以防盗链

什么是盗链呢?意思是一些盗版网站用了别人网站的链接

同时Referer头可以做一个来源统计的操作。

4.Connection: 连接是否可以被复用

请求空行
  请求空行就是一个空行,意思就是告诉服务器从下一行开始就没有请求头了

请求体
  注意get请求是没有请求体的,只有post请求有请求体

请求体是以键值对的方式传输的

post的请求体就是以键值对

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值