【问题标题】:Why should I use POST etc methods instead of URL parameters? [duplicate]为什么我应该使用 POST 等方法而不是 URL 参数? [复制]
【发布时间】:2017-06-14 20:13:08
【问题描述】:

我们可以通过这样做来完成同样的事情:

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

我们可以通过使用 POSTJSON 正文来做到这一点。

那么,如果任何人都可以通过使用 url 参数获得相同的目标,为什么还要使用 PUT/POST/PATCH?即使有auth,也可以不用header,通过参数来回发送auth token的信息?

【问题讨论】:

  • 嗯,Ajax 不需要每次来回传递数据时都重新加载页面。
  • 对于 Ajax,调用使用单独的连接(有或没有长轮询),我认为这也可能是 GET 或 POST - 不应该涉及在第一页调用中 GET/POST 的决定。跨度>

标签: javascript http


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    一个原因是 GET 参数必须是 URL 编码的。 那么我认为 RFC 中记录了 URL 长度的限制。 这将在传输大数据时变得困难(例如文件上传,...)

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

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

    【讨论】:

      猜你喜欢
      • 2021-09-13
      • 2012-09-18
      • 1970-01-01
      • 2012-10-08
      • 2015-08-13
      • 1970-01-01
      • 1970-01-01
      • 2011-06-19
      • 1970-01-01
      相关资源
      最近更新 更多