题
我正在开发一个简单的宁静API,并且完全爱如何简约。但我不确定正确HTTP响应的代码,用于多种情况:
错误形成的查询
正确形成的查询是指一种资源而不存在
资源成功地删除了
资源成功地编辑
目前,我正在想,1 403 Forbidden
;2会 410 Gone
;3和4会 202 Accepted
.做他们的声音吗?
解决方案
#1,403表明你的应用程序的理解请求,但不会履行它的(即当前用户没有权限做,由于某些原因).我认为400坏的请求可能会更有意义,在这种情况。
#2-我会认为404会更有意义即资源不被发现的,除非 资源确实存在某一点,然后被删除,在这种情况下410将是公平,但没有多少客户知道该怎么做410.
为#3和第4-200如果你处理删除成功,202如果删除是排队,并将在稍后的日期"的乐队"。
RFC2616 提供了很大的解释什么每个响应的代码装置中的相当可以理解的条款。
其他提示
- 400
- 404
- 200
- 200
- 201资源成功地创造了
1).400标准坏的请求,403意味着要求格式正确,但你是不允许的访问它
2).404-410意味着资源确实存在,但已被故意移动
3款)。和4)。200如果该行动已经发生了成功的时候,你送回应,202如果行动等待审理。在实践中202是有可能删除行动(他们可能会受到审查),但你可能或可能不希望马上返回一个200无论如何,所以它的出现实际上删除的用户。这是一个设计问题恕我直言。
获得理查德森和红宝石的书 -它有一个有用的附录关于你的问题是需要读者的方式
为什么不能使用的标准 http响应的代码 .你会得到所有的优化(例如,303,304)/基础设施置于http免费的。
不隶属于 StackOverflow