Joh*_*oDo 7 rest http http-verbs restful-architecture
例如,如果我调用GET获取项目,使用DELETE删除它并再次获取它,第二个GET应如何工作?
我的意思是,通过正确遵循REST原则,这样做的正确方法是什么,因为GET可以被缓存而且全部?在REST中处理陈旧数据的方法是什么?
首先,行为取决于 DELETE 调用返回的响应代码。
如果 DELETE 返回200 - OK或204 - No Content则客户端应该开始404 - Not Found下一次调用 GET。这是因为202和204意味着该资源被立即删除。
但是,如果 DELETE 返回202 - Accepted,则客户端有可能在之后的一段时间内成功获取资源。这是因为 202 意味着该资源已被标记为删除,但不一定会立即清理。
其次,如果涉及缓存,则应将行为构建为与不存在缓存时发生的情况一致。成功的 DELETE 应该始终导致从数据的真实来源以及任何缓存的副本中删除。
| 归档时间: |
|
| 查看次数: |
903 次 |
| 最近记录: |