我已经从这个问题中学习了如何将自定义标头添加到 Ext-JS 请求中:
现在我正在尝试处理问题是用户错误时的异常处理问题。这个问题在这里处理:
其中一个答案建议映射到最接近的 HTTP 错误代码,然后还使用自定义响应标头将异常信息传递回客户端。
我强烈建议不要扩展基本的 HTTP 状态代码。如果您找不到与您的情况完全匹配的一个,请选择最接近的一个并将错误详细信息放在响应正文中。另外,请记住 HTTP 标头是可扩展的;您的应用程序可以定义您喜欢的所有自定义标头。例如,我处理的一个应用程序可能在多种情况下返回 404 Not Found。我们没有让客户端解析响应正文,而是添加了一个新的标头 X-Status-Extended,其中包含我们专有的状态代码扩展。因此,您可能会看到如下响应:
HTTP/1.1 404 Not Found
X-Status-Extended: 404.3 More Specific Error Here
我非常喜欢这个主意。但无法弄清楚如何从 ExtJS 中访问此自定义响应标头以提取异常消息。