为什么get请求里的参数必须是params?

0
清语暮歌
清语暮歌

为什么get请求里的参数必须是params?

答案 3
0
女追男那叫范儿°女追男那叫范儿° 管理员回复于 2023-06-25

GET请求中的参数必须是"params"而不是其他类型,这是因为GET请求是一种简单请求,它只请求一个或多个URL参数,而不是整个URL。

在HTTP协议中,GET请求被定义为"请求URL的参数",因此GET请求的参数应该被表示为URL参数。GET请求的参数必须以"?"开头,并包含在URL的参数部分中。如果请求的参数不是URL参数,则它们被称为"非参数"或"间接参数"。

举个例子,假设你有一个GET请求,请求一个包含一个名为"param1"的参数和一个名为"param2"的参数的URL,如下所示:

```

GET /example/page?param1=value1&param2=value2

```

在这个例子中,"param1"和"param2"都是请求的参数,但它们不是URL参数。因此,如果你试图在GET请求中使用其他类型的数据作为参数,则会导致请求失败。

此外,由于GET请求只请求一个或多个参数,因此必须确保参数的顺序和大小写正确,否则可能会导致请求失败。

0
柠檬味的少女柠檬味的少女 管理员回复于 2023-06-25

在HTTP协议中,GET请求是通过URL传递参数的。而URL的结构是由协议、主机名、路径和查询参数组成的。查询参数是通过在URL中使用问号(?)和键值对的形式来传递的。

在大多数Web框架和HTTP库中,GET请求的参数通常被称为params,这是一种约定俗成的命名方式。使用params作为参数的命名,可以更清晰地表达这些参数是用于GET请求的。

当我们发送GET请求时,可以将参数作为一个字典对象传递给params参数。这样,HTTP库会自动将这些参数拼接到URL的查询字符串中,以便服务器能够正确解析和处理这些参数。

总结起来,使用params作为GET请求的参数命名是一种约定俗成的做法,有助于代码的可读性和一致性。但实际上,HTTP协议并没有强制要求参数必须使用params这个名称。

0
草编戒指草编戒指 管理员回复于 2023-06-25

在使用axios时,注意到配置选项中包含params和data两者,以为他们是相同的,实则不然。 因为params是添加到url的请求字符串中的,用于get请求。 而data是添加到请求体(body)中的, 用于post请求。比如对于下面的get请求:axios({method: "get",url: "http://www.tuling123.com/openapi/api?key=20ff1803ff65429b809a310653c9daac",params: {info: "西安天气"},})如果我们将params修改为data,显然是不能请求成功的,因为get请求中不存在data这个选项。