問題タブ [http-accept-language]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1753 参照

grails - Grails i18n: Accept-Language ヘッダーの設定

Grails の国際化ドキュメントによると、i18n は次のいずれかによって実現されます。

  • Accept-Languageリクエストにヘッダーを設定します。また
  • langクエリ文字列パラメータへの取り組み

前者の方が HTTP に準拠しているため、私は前者を選択しています。率直に言って、それをクエリ パラメータとして追加するのは好きではありません。

しかし、そもそもどうやって設定Accept-Languageするのでしょうか?!?

要求された TLD によってアプリのロケールが決定されるようにします。は伝統的に英語/米国に関連付けられているため、のリクエストはアプリhttp://myapp.example.comのバージョンを返します。要求された場合、Grails はアプリのバージョンを返す必要があります。等。en_US*.comhttp://myapp.example.frfr_FR

だから私の本当の質問は:

要求された URL/TLD を Grails がサーバーに設定できる変数にマップし、GSP に挿入して、クライアント側の要求が常にAccept-Language特定の URL/TLD に一致するヘッダーを持つようにするにはどうすればよいですか?


アップデート

ここでブラウザー/Grails の動作を確認したい: ユーザーがブラウザーを構成するときに、ブラウザーがAccept-Languageそれに応じてヘッダーを調整すると想定しても安全ですか? もしそうなら、ifAccept-Languageが送信されず、Grails がデフォルトlangで使用するクエリ パラメータとして指定されていないと仮定できますか?en_US

0 投票する
2 に答える
2652 参照

java - Accept-Language として HTTP ヘッダー要求で使用する「en_US」と「en-US」の形式はどれですか?

私は実際にこれら 2 つの形式をテストしましたが、私のサーバーは両方とも問題ありません。HTTP ヘッダー フィールドは "en-US" がフォーマットで、ローカル Java クラスは "en_US" を返しているため、どちらを使用するか少し混乱しています。

私の部分的なコードは次のようなものです:

getAcceptLanguageHeader()en_US;q=0.9メソッドは、ユーザーのデバイス言語が not の場合、文字列に追加しますen_US

任意のアイデアをいただければ幸いです。ありがとう。

0 投票する
2 に答える
1982 参照

java - Spring MVC: ブラウザー言語に従ってユーザーをリダイレクトする

Spring MVC 4では、ブラウザの言語(HTTP ヘッダー "Accept-Language")に従ってローカライズされた URL にユーザーをリダイレクトするにはどうすればよいですか?

ユーザーが URL にアクセスしようとすると、ブラウザの言語が「DE」の場合 (つまり、「Accept-Language」ヘッダーが「de」に設定されている場合)example.com/some/pathにリダイレクトされます。de.example.com/some/path

同様に、ユーザーがアクセスde.example.com/some/pathしていて、その言語が EN の場合は、にリダイレクトする必要がありますexample.com/some/path

それを得る最も簡単な方法は何ですか?

0 投票する
1 に答える
169 参照

.htaccess - .htaccess 言語による仮想フォルダーへのリダイレクト

特定の言語が検出されない場合、仮想フォルダーにリダイレクトしようとしましたが、これは機能しません。

私が必要なもの:

「dk」以外の言語を使用しているユーザーが url.to/page.html にアクセスした場合は、url.to/en/page.html にリダイレクトする必要があります。それ以外の場合は、ルート フォルダー (url.to/page.html) に留まる必要があります。

手伝ってくれてありがとう!

0 投票する
1 に答える
371 参照

.htaccess - htaccess 言語検出の効率的なコード

私のウェブサイトで、イタリア語を話す訪問者 (言語ブラウザーはイタリア語) を /it/ にリダイレクトし、他のすべての言語を /en/ にリダイレクトしたいと考えています。

私は次のコードを思いつきます:

このようにしてすべての条件がチェックされ、言語がイタリア語の場合は /it にリダイレクトされます。それ以外の場合は 2 番目のブロックが実行され、英語版にリダイレクトされます。

私の最初の質問は、これを行うためのより効率的な方法はありますか? 私のhtaccess機能は非常に限られています。

追加の質問として: これは SEO で問題を引き起こす可能性がありますか? domain.net をクロールするボットはすべて英語版にリダイレクトされ、イタリア語版へのリンク (旗の画像) を見つけて、イタリア語版もクロールすると思います。それが正しいか?

0 投票する
1 に答える
9872 参照

python - リクエストを使用したPythonの変更Accept-Language

私はpythonが初めてで、リクエストライブラリを使用してIMDbから情報を取得しようとしています。私のコードはすべてのデータ (映画のタイトルなど) を母国語でキャプチャしていますが、英語で取得したいと考えています。それを行うために、リクエストのaccept-languageを変更するにはどうすればよいですか?

0 投票する
6 に答える
2184 参照

php - 言語リダイレクトはデスクトップでは機能しますが、モバイル ブラウザーでは機能しません

ブラウザの言語設定を確認し、サイトの言語バージョン (WP マルチサイト) にリダイレクトする小さなスクリプトを PHP で作成しました。

Mobile Safari または Mobile Chrome でテストすると、リダイレクトが機能していないように見えます。考慮する必要があるモバイル ブラウザーの受け入れ言語の特別な出力はありますか?

更新:さらにデバッグした後、私はこれを見つけました:

  • Mobile Safari は、HTTP_ACCEPT_LANGUAGE をエコーするときに正しい言語を表示しますが、リダイレクトしません。
  • モバイル Chrome (iOS のみ、Android で動作) で正しい言語が表示されません (デフォルトは「en」)。
  • iOS は http ヘッダー データを異なる順序で解析します。iOS Chrome (en-US,en;q=0.8,sv;q=0.6) と OSX Chrome (sv,en-US;q=0.8,en;q=0.6) を比較してください。 )。