设计REST API的错误似乎是遵循标准HTTP代码(4XX和5XX)以及包含正文(XML / JSON)的良好实践:
我的问题是......这些信息会被国际化吗?
我倾向于认为向客户端显示消息是客户端负责,并且应将这些API错误视为客户端应用程序与API之间的协议(格式和代码字段),但默认情况下不应考虑因为非常适合直接暴露给客户,所以格式化最终的消息" Ooops ...出了点问题"应在客户端完成。在其他情况下,我可以看到API部署,因为P.O.需要改变"糟糕"到" Uups"这样的事情,似乎完全像客户端应用程序恕我直言的外观和感觉。
答案 0 :(得分:4)
您是对的,大多数情况下您不需要向客户端公开REST异常,因为REST错误太技术化了。
仍有一些应用会选择让用户“深入研究技术错误” - 但即便如此,我相信终端用户明白现在我们处于“技术领域”并赢得了“期待消息的翻译(+翻译技术消息在除英语之外的其他语言中听起来不太好)
答案 1 :(得分:2)
我会说你的整个API是国际化的,客户可以通过Accept-Language
标题选择语言,那么API错误也应该国际化。