Gauche > Archives > 2011/10/18

2011/10/18 13:28:53 UTCshiro
#
むー、Ajaxでサーバから送ったjson中の文字列がChromeで化ける。content-type: application/json; charset=utf-8 でちゃんとutf-8で送ってるのになあ。Chrome側でもencodingはutf-8と認識されてるようなんだが表示はまるでutf-8バイト列をiso-8859-1であると解釈したかのようだ。
2011/10/18 13:51:58 UTCshiro
#
ぐゎ。prototype.jsのresponseJSONを使う場合、jsonを"content-type: application/json" で (charsetプロパティ無しで) 返さないとならないんかな。少なくともChromeではそうしたらうまくいった。だがどういう仕様なんだこれは。
#
んー、でもprototype.jsの中ではthis.getHeader('Content-type') || '').include('application/json') でチェックしてるな。これならcharset=utf-8がついていようがいまいが一緒のはずだと思うんだが、何故差が出る?
#
ありゃ、ヘッダを元にもどしても今度はうまく行く。キャッシュが悪さしてた? うーむ…