1

我有一个返回枚举的 RESTful 服务。

当我想到返回字符串将取决于客户端的语言环境时,我正在考虑是否为枚举值返回整数或字符串。

那么应该如何处理 REST 中的本地化呢?语言环境是 conneg 的一部分吗?

4

1 回答 1

8

本地化内容协商的一部分,语言首选项使用Accept-Language标头 ( RFC ) 指定。

RFC 对允许服务返回的内容非常严格——例如,如果没有发送标头,那么您可以选择任何语言,但如果包含标头,那么您只能返回一种请求的语言,并且不允许退回到不同的语言。

换句话说,如果一个资源只有英文版本,那么请求的资源Accept-Language: de应该返回406 Unacceptable而不是默认显示英文版本。

在其他几个问题( 8204816、7892502)中讨论了不使用规范但允许回退选项的其他替代方案

于 2012-10-27T14:04:55.733 回答