首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >对于可能返回陈旧数据的GET请求,我应该使用什么HTTP状态代码?

对于可能返回陈旧数据的GET请求,我应该使用什么HTTP状态代码?
EN

Stack Overflow用户
提问于 2011-10-25 02:44:28
回答 4查看 1.2K关注 0票数 1

场景是:我正在实现一个RESTful web服务,它将充当存储在远程C系统上的实体的缓存。web服务的需求之一是,当远程C系统离线时,它将使用最后缓存的数据响应GET请求,但将其标记为“陈旧”。

我计划将数据标记为陈旧的方法是返回一个HTTP状态码,而不是200 (OK)。我考虑使用503 (服务不可用),但我相信它会使一些C#/Java HTTP客户端抛出异常,这将间接迫使用户使用控制流的异常。

你能推荐一个更合适的状态代码吗?或者我应该只返回200并在响应正文中添加一个过期标志?另一种选择是定义一个单独的资源来通知连接状态,并让客户端单独处理它。

EN

Stack Overflow用户

发布于 2011-10-26 10:06:24

我将返回200OK和一个适当的特定于应用程序的响应。似乎没有合适的其他HTTP状态代码,因为是否以及如何使用响应的决定是传递给客户端的。我还建议不要使用标准HTTP缓存控制标头来实现此目的。我只会使用它们来控制第三方(中间层和客户端)缓存。使用这些头来传递特定于应用程序的信息,这将应用程序逻辑与缓存控制联系在一起。虽然这可能不是一目了然的,但独立发展应用程序逻辑和缓存策略的能力确实有长期的好处。

票数 2
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7880280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档