关于对Http各不同请求类型及参数的请求内容实战解析

1、添加QueryParams参数提交POST和Get请求
  • Get请求
    请求地址和数据如下:
    在这里插入图片描述
    抓包数据如下
    在这里插入图片描述
  • POST请求
    请求地址和数据如下:
    在这里插入图片描述
    抓包数据如下
    在这里插入图片描述
    从以上图可以看出POST和Get请求queryParams数据时都是放在url中传过去的。所以Post和Get都能通过地址传输数据
2、在body中添加form-data、x-www-form-urlencoded、Json参数提交POST和Get请求
  • Get请求
    1、form-data参数提交
    在这里插入图片描述
    fiddler抓包:
    在这里插入图片描述
    2、x-www-form-urlencoded参数提交
    在这里插入图片描述
    fiddler抓包
    在这里插入图片描述
    3、Json参数提交
    在这里插入图片描述
    fiddler抓包
    在这里插入图片描述
  • POST请求
    1、form-data参数提交
    在这里插入图片描述
    fiddler抓包
    在这里插入图片描述
    2、x-www-form-urlencoded参数提交
    在这里插入图片描述
    fiddler抓包
    在这里插入图片描述
    Content-Type: application/x-www-form-urlencoded为这个时,如果用的SSM框架,后台会读body里面的数据。
    3、Json参数提交
    在这里插入图片描述
    fiddler抓包
    在这里插入图片描述
    通过以上实战可以发现,Get和POST在发送数据时,其请求的Http内容是一模一样的,那么相信大家就会有个疑问了?不是说get请求不能传递body的数据吗?通过看图发现其实是可以的,至于为什么说不可以,这就涉及到后台接收的问题了。对这里有疑问的可查看以下博客进行了解:
    https://blog.csdn.net/weixin_43881282/article/details/104519291

小知识点: 在表单发送post请求时,浏览器会将数据放在请求的body里面,所以地址栏不会出现数据。
通过以下操作能看出
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注意:在Postman这款http工具类中,已经区分了在请求行和在body里面放数据,对于开发者来说,使用相关的工具类时只有queryParams和formParams等一些参数的存放,按本人现在知识了解程度来看,如果用queryParams和pathParams存放参数,那么就是将参数放在请求行里面(url),如果是formParms,会放在body里面传输,这里尤其重要,为什么有时候你请求了参数,而后台不解析而已,就是可能你的后台不能接收来自body的数据。

总结:对于Post和Get请求,其实结构都是相同的,Get也能把数据存放在body里面,Get和Post其实就是Http请求方式不同,其本质是一样的(都有请求行,请求头,请求主体),不同的在于根据不同的请求类型,后端会做不同的接收处理。相信大家看了关于上面那篇博客就能明白了。所以Http的Delete、Put等请求类型,大家可以根据原理进行想象他们为什么会存在呢?以及存在的意义。欢迎大家在评论区留言。

附:在POST请求中,表单数据按(username=zcw&password=123)这样的格式存放在body中,后端通过参数获取方法能够读到数据,这是特例。其他GET、PUT请求都无法读到数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值