javascript – 是否有最大HTTP状态代码消息长度?

我正在开发一个项目,我正在构建前端,而其他人正在构建API.我为所有请求提出了以下结构,以
JSON格式发送:

{
  "success": true, // true/false
  "message": null, // a string if success==false indicating the error
  "data": {} // The actual data in the response
}

他们更感兴趣的是使API更加RESTful,而不是“消息”字段,他们建议在HTTP标头中的状态代码消息中发回消息,例如:

HTTP/1.1 401 Authentication Failed for john.smith@example.com. Please log in again.

并且前端会显示“身份验证失败,请访问john.smith@example.com.请重新登录.”在弹出窗口或其他东西.

我担心长度限制,但我找不到任何表示没有最大长度的东西.我们应该确保将这些消息保持在最小长度吗?是否有充分的理由不这样做,而是将其作为内容(JSON或纯文本)发回?

最佳答案 一点点测试将会有很长的路要走,但你应该可以做到这一点,事实上
RFC特别说:

The reason phrases listed here are only recommendations — they MAY be replaced by local equivalents without affecting the protocol.

您可能唯一可能的问题是标题大小(某些服务器可能有限制,但我认为它们都相对较大)以及某些旧版浏览器可能会对此做出反应.坦率地说,我认为使用响应体更有意义,因为它更容易解释和清除,但是你的方法应该没有任何问题.

点赞