为什么我应该使用POST等方法而不是URL参数?

时间:2017-01-29 16:04:52

标签: javascript http

我们可以通过以下方式完成同样的事情:

localhost:3000/endpoint?var1=val1&var2=val2

我们可以将POSTJSON正文一起使用。

那么为什么有人会使用PUT / POST / PATCH,如果他们可以通过使用url params获得相同的目标?即使使用auth而不是标题,您也可以使用参数来回发送auth令牌的信息?

2 个答案:

答案 0 :(得分:0)

一个原因是GET参数必须是URL编码的。 然后我认为RFC中记录了URL长度的限制。 这将使传输大数据(例如文件上传,......)

变得困难

此外,开发人员可能希望隐藏用户的一些信息,以防止用户使用所有这些参数为页面添加书签...

肯定没有理由POST args是传输层的安全性。在这两种情况下,数据都是HTTP中的纯文本,并且在使用安全HTTPS连接时,两者(也是URL)都是端到端编码的。

答案 1 :(得分:0)

它更安全,因为您的数据已加密并在请求的标头中发送。