※ ChatGPTを利用し、要約された質問です(原文:AjaxでJSONを受信すると、文字化けする)
AjaxでJSONを受信すると、文字化けする
このQ&Aのポイント
ajaxでJSONを受信して文字列に変換すると、日本語部分のみ文字化けされてしまいます。
原因が分からず、調査を行っているが解決策が見つからない。
また、日本語部分のメッセージには個別に設定したBean Validationのアノテーションのメッセージが入っている。
お世話になっております。
ajaxでJSONを受信して文字列に変換すると、日本語部分のみ文字化け("?"に変換)されてしまいます。色々と調べているのですが原因が分からず、恐れ入りますがご教示のほどお願い致します。
尚、日本語部分のメッセージには個別に設定したBean Validationのアノテーションのメッセージが
入ります。
$.ajax({
type: 'GET',
url: url,
dataType: 'json',
data: params,
contentType: "application/json; charset=utf-8"
})
.done(function(params, dataType){
alert($.stringify(params));
}
---alert($.stringify(params))の内容---
{"contents":[{"id":"a","message":"123abc???"}}
(送信元では【"message":"123abcあいう"】と設定)
お礼
ご回答ありがとうございます。 結論を申し上げますと、サーブレット側で定義していた@RequestMappingの文字コードがデフォルトで"ISO-8859-1"となっており、charset=utf-8に設定したところ日本語で取得できました。 ありがとうございました。