3

私の API は Jersey 2 を使用しており、国際化をサポートしたいと考えています。クライアントがAccept-Languageパラメーターを指定する必要があることは理解していますが、それを適切に処理する方法を理解したいと思っています。

私の API は言語のみFRENCHを処理する必要があると仮定しましょう。次のコードを使用して、優先ENGLISHロケールを取得できることを知っています。

@GET
@Path("a-path")
public Response doSomething(@Context HttpServletRequest request) {
    Locale locale = request.getLocale();
    // ...
}

問題は、優先ロケールが API でサポートされていない場合です。w3cAccept-Language: da, en-gb;q=0.8, en;q=0.7によると、クライアントが私に を送信したとしましょう。基本的には次のことを意味します。優先ロケールは最も期待されるロケールのみを返すため、API で最初にサポートされている言語を選択する方法はありますか? すべてのリソースではなく、1 か所 (つまり ) で処理したいと考えています。"I prefer Danish, but will accept British English and other types of English."Filters

4

2 に答える 2