【问题标题】:Correct HTTP verb for updating cache for REST Api用于更新 REST Api 缓存的更正 HTTP 动词
【发布时间】:2019-05-18 20:51:17
【问题描述】:

我正在开发 RESTful Api 微服务,它将所有数据缓存在内存中(并从持久存储中每隔n 分钟更新一次)。服务有一个用于即时缓存更新的 api /update-cache

更新缓存的最佳 http 动词是什么?

GET, POST, PUT, PATCH 或者我需要创建一些自定义动词

【问题讨论】:

  • 如果您既不想发送任何类型的“正文”也不想明确更新任何资源,您应该使用 GET
  • 这就是我的想法。但是规范要求GET 是安全的: > HTTP 方法如果不改变服务器的状态是安全的。换句话说,如果方法导致只读操作,则该方法是安全的。 © developer.mozilla.org/en-US/docs/Glossary/safe 缓存更新操作对我来说似乎不太正确
  • 如果你想遵循“规范”,你不应该使用 REST 来调用服务/功能。 REST 根据定义用于对资源进行操作(并且“update-...”不是资源 - 它是动词)。你可以试试DELETE /cache 这样的东西,但对我来说它看起来有点“异国情调”

标签: rest http caching httpverbs acceptverbs


【解决方案1】:

你的提议并不是真正的 RESTful,它更像是一个 RPC 风格的操作。对于这个POST 很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-08
    • 1970-01-01
    • 2014-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多