ホームページ  >  記事  >  Java  >  Spring MVC @ResponseBody レスポンスで適切な Content-Type エンコーディングを確保する方法

Spring MVC @ResponseBody レスポンスで適切な Content-Type エンコーディングを確保する方法

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-27 20:19:01288ブラウズ

How to Ensure Proper Content-Type Encoding in Spring MVC @ResponseBody Responses?

@ResponseBody 経由で Spring MVC に応答 Content-Type を設定する

Spring MVC と @ResponseBody アノテーションを使用して開発する場合、制御することが重要です応答のコンテンツタイプ。ある例では、コントローラー メソッドで content-type を UTF-8 に明示的に設定しているにもかかわらず、応答が目的の UTF-8 ではなく ISO-8859-1 エンコーディングで表示されるという問題が発生しました。

解決策

この問題を解決するために、ユーザーは、@ResponseBody アノテーション自体が、products 属性を介した content-type の指定をサポートしていることを発見しました。コントローラー メソッドに次の行を追加することで、応答のコンテンツ タイプを明示的に定義できました:

<code class="java">@RequestMapping(value = "ajax/gethelp")
@ResponseBody(produces = "text/plain; charset=UTF-8")
public String handleGetHelp(Locale loc, String code, HttpServletResponse response) {
    // ...
}</code>

この構成により、コントローラー メソッドは UTF-8 エンコーディングのプレーン テキスト応答を返すことができます。

追加メモ

Spring 3.1 以降を使用しているユーザーの場合、@ResponseBody アノテーションは、応答コンテンツ タイプを設定するためのより簡単なアプローチを提供します。カスタムコンバータ戦略を使用します。

以上がSpring MVC @ResponseBody レスポンスで適切な Content-Type エンコーディングを確保する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。