HTTP POST而不是CRUD REST范例

时间:2013-05-17 11:13:44

标签: http rest web

我有一个问题:如何使用POST HTTP方法来模拟CRUD范例。我知道我可以使用POST来更新和创建但是如何使用POST删除和检索资源?

2 个答案:

答案 0 :(得分:1)

HTTP具有DELETE和GET,因此您不应该使用POST进行此类操作。

https://tools.ietf.org/html/rfc2616

答案 1 :(得分:1)

要使用REST,你应该

  • 当您要创建项目时发布
  • 删除时删除
  • 当您想要更新它时PUT
  • 当您想要检索时获取

POST对来自它的GET数据的网址没有意义,这会让您的用户感到困惑。

例如,使用以下jquery创建用户

$.ajax({
  url: 'http://example.com/users, 
  type: 'POST',
  data: user
})

...然后你可以更新它

$.ajax({
  url: 'http://example.com/users, 
  type: 'PUT',
  data: user
})

......或者可能删除它

$.ajax({
  url: 'http://example.com/users, 
  type: 'DELETE'
})

并尝试获取它以查看它是否仍在那里

$.ajax({
  url: 'http://example.com/users
})

(为简单起见,我省略了回调)