写一个http请求都有什么参数,以及java后端如何获取

1 篇文章 0 订阅

一个完整的http请求包含连接时的三次握手和四次挥手,这些可能面试时候会问到,大家应该也都背过。。。今天先不提这个,说说我们实际代码中会用到的

一个HTTP请求由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成。

请求行 包含 请求方法 URL 协议版本
例如: POST 123.03.03 HTTP1.0

请求头 Headers
请求头中常见的参数有:
Host : 接受请求的服务器地址,可以使ip端口号,也可以是域名;
User-Agent : 发送请求的应用程序名称;
Connection: 指定与连接相关的属性,如 Connection:Keep-Alive
Accept-Charset:通知服务端可以发送的编码格式
Accept-Language:通知服务端可以发送的语言

请求头中也可以添加自定义的参数,

空行 空行代表请求头结束,和请求参数的分界线

请求数据 get请求没有这个请求数据,数据都在url上面
name=小明&age=1000  请求数据

POST  /index.php HTTP/1.1    请求行
Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:10.0.2) Gecko/20100101 Firefox/10.0.2  请求头
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
Accept-Language: zh-cn,zh;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://localhost/
Content-Length:25
Content-Type:application/x-www-form-urlencoded
  空行
name=小明&age=1000  请求数据

java后端如何获取这些请求信息

@RequestHeader()  获取请求头注解;

请求体注解获取有两种,根据请求头中的Content-Type配置:
@RequestParam用来处理 Content-Type 为 application/x-www-form-urlencoded 编码的内容;
@RequestBody一般用于处理非 Content-Type: application/x-www-form-urlencoded编码格式的数据,比如:application/json、application/xml等类型的数据

像get请求的参数在url上,获取需要用**@PathVariable**注解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值