【问题标题】:Correct HTTP Status Code when rejecting a request because User-Agent header is invalid由于 User-Agent 标头无效而拒绝请求时更正 HTTP 状态代码
【发布时间】:2011-11-25 14:17:08
【问题描述】:

我目前正在开发基于 HTTP 的 API。我们的使用条款要求用户发送适当的用户代理标头(例如“-”被视为无效)。现在我不太确定如果请求被拒绝,服务器应该响应哪个正确的 HTTP 状态。有什么建议吗?

【问题讨论】:

  • 我会修正使用条款。这个要求没有任何意义。
  • 这是为什么呢?这背后的实际想法是收集一些统计信息,例如哪个应用程序使用 API 的频率。
  • Niko - 使用不发送 User-Agent 标头的 UA 的人当然也可以将其设置为任意值。这对统计数据收集有何帮助,除了您不需要为“无 UA 存在”编写代码?

标签: api http user-agent


【解决方案1】:

400 Bad Request 或 403 Forbidden 将是我选择的两个

【讨论】:

  • 400 是我的选择。 403 仅适用于登录用户
  • @TomBrinkkemper 403 不仅适用于登录用户。官方意思是“服务器理解请求,但拒绝执行。授权无济于事,请求不应该重复。”
猜你喜欢
  • 1970-01-01
  • 2012-07-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-25
  • 2022-07-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多