为什么查询字符串在GET请求的URL中发送并在POST请求的主体中发送?

时间:2014-05-30 04:00:03

标签: http post web get query-string

GET:

GET /blog/?name1=value1&name2=value2 HTTP/1.1
Host: website.com

POST:

POST /blog/ HTTP/1.1
Host: website.com
name1=value1&name2=value2

我不明白为什么会有差异。

2 个答案:

答案 0 :(得分:1)

GET应该用于可书签页面或可重复搜索;因此URL存储查询数据,因此浏览器可以重复使用它。

另一方面,POST是一次性请求,其中包含对查询字符串可能太长的敏感信息或信息。数据不应该像GET请求一样保存,因此它存储在正文中。

您可能还希望看到此SO答案:https://stackoverflow.com/a/198473/436524

答案 1 :(得分:0)

这是为HTML表单定义表单提交的结果。它与HTTP本身无关。