1.应用场景
学习了解http的get请求方法的用法及不知道的信息. |
2.学习/操作
1.博文阅读 // 先阅读完截图 2. 实践/验证过程
方式一: curl代码 使用git bash 进行curl 分别进进行GET/POST请求 curl
cmd
结果如下 由上可知: GET方法在curl实现[而非协议]上, 只是支持request body传递参数的, 而且laravel 7.x 也只支持获取GET 请求体参数的. 方式二: postman代码 使用form-data时, 并不能接收到请求体中参数. 如果使用content-Type: "application/json", 则可以正常接收参数 原因: PHP使用表单进行数据提交时, 支持GET/POST请求方法, GET: 服务端只获取uri中的参数. POST: 服务端获取uri与请求体中的参数. 如改成POST请求,即可接收参数: Note: 1.上面文章中有言, postman不支持GET方法携带body [当选择get方式时, body变为不可点击状态], 目前来看, 并不会变灰 而且, 可以使用content-type=application/json时的请求体进行传递参数. 该截图是使用postman 去请求kibana查询log [ElasticSearch] 2. 如果使用PHP原生语言来处理, 要处理的东西稍微有点多~~, 暂时就直接使用框架来做测试验证.[如果PHP框架支持, 那么PHP原生也一定是支持的] 后续补充 ... |
3.问题/补充
1. 关于get请求body传参,并不推荐通过body传参,可以参考stackoverflow关于该问题的回答 -- 1 year ago
2. get请求只是帮你把body串在query string中.
3. 很多人讨论GET和POST的时候很容易就从“协议”讨论到“实现”上去了。 -- 2 years ago
4. 在浏览器里如何让get请求携带body呢? -- 2 years ago
|
4.参考
谁说 HTTP GET 就不能通过 Body 来发送数据呢? | 隔叶黄莺 Yanbin Blog - 软件编程实践 // 谁说 HTTP GET 就不能通过 Body 来发送数据呢? IETF | RFCs // RFC文档 |
后续补充
...