HTTP请求的学习了解及前后端对接接口时的传参问题

为什么存在post,get,put,delete等多种类型请求?

这是RESTful风格的一种规范

参考链接:HTTP之为什么存在post,get,put,delete等多种类型请求(RESTful风格介绍)

请求类型(Parameter Type)中,query,path,body的区别

query是指请求的参数,一般是指URL中?后面的参数。所以,请求时可以通过?拼接在后面

Query is use for URL parameters and with @Query("password") the URL should be :

user/john?password=****

Path is use to replace item defined in your path, like

user/{username}

Parameter Type 为path时,直接拼接到url中即可。

body是指请求体中的数据

参考链接1:Query和Path的区别

参考链接2:POST请求的query参数和body参数共存怎么处理

参考链接3:HTTP请求中的header query 和body

通过axios请求时需要注意的

如下官方文档中所示的,是指理论上的情况,比如:post请求时,要加data参数。实际上,data参数表示的是放在请求体body中的参数。// data is the data to be sent as the request body。所以,假设一个post接口,它的参数类型是query(理论上,post接口中,敏感信息和大量参数是不要通过query方式的,而是放在body中),那么就不需要data参数,而是通过params参数或省略params即可。

小结:

  1. params会将请求的参数拼接到url中去,常用于get请求

  2. data是添加到请求体(body)里面去,常用于post请求

so,学习一个东西,要了解到稍微本质的内容,而不是单纯记忆get请求时用params,post请求用data这种(针对axios),当了解了一些内容的时候,才不会质疑自己,而是质疑不规范。

axios#request(config)

axios#get(url[, config])

axios#delete(url[, config])

axios#head(url[, config])

axios#options(url[, config])

axios#post(url[, data[, config]])

axios#put(url[, data[, config]])

axios#patch(url[, data[, config]])

axios#getUri([config])

参考链接1:axios

参考链接2:axios发送请求时用post请求在请求url后面拼接参数

原文地址:https://www.cnblogs.com/chaoyueqi/p/11716566.html