GET或POST删除

时间:2011-09-15 19:14:43

标签: language-agnostic

作为网络开发领域的新手,我有一些关于网页设计的一般性问题,这里就是其中之一。

我正在为我的网站实现一个简单的地址簿。它应该允许用户添加/修改/删除地址。对于删除,我不清楚我应该如何实现它。我应该使用GET或POST将所需的信息传递给服务器吗?

我认为使用POST进行删除更安全,但是当亚马逊的实现似乎与此相反时(下图)。我对采取哪种方法感到困惑,或者甚至无关紧要?

亚马逊的地址删除方法

http://www.amazon.com/gp/css/account/address/view.html?ie=UTF8&addressID=xxxxx&addressDelete=true&sessionId=xxx-xxxxxxx-xxxxxxx

注意:这适用于网站(不是网络服务)

2 个答案:

答案 0 :(得分:6)

它是RESTful Web服务还是只是从浏览器访问的网站?

  • 对于RESTFul服务,DELETE是合适的
  • 对于刚刚发布的网站。

答案 1 :(得分:2)

您将使用的HTTP方法不会以任何方式影响安全性。它们具有语义含义。您是否知道还有DELETE方法? POST和GET通常用于Web应用程序,因为它主要由某些语言(例如PHP)和浏览器支持。

还有其他事情你应该照顾。在这种情况下,请求当然是授权的,您可能会根据您使用的平台使用身份验证系统来解决这个问题。

对CSRF这样的事情也要警惕。例如有人可以在互联网上发布虚假图像链接到删除URL,登录用户将访问它并在不知不觉中删除该实体。这适用于您的应用程序的任何请求。