Help us understand the problem. What is going on with this article?

HTML と JavaScript が shift_jis の場合の JSON の文字コードについて

More than 1 year has passed since last update.

比較

以下を変えて比較

  • JSON の読み込み方
  • サーバのレスポンスヘッダの Content-Type の文字コード
  • JSON の文字コード

XHR の場合

Content-Type   JSON  結果       
utf-8(指定なし) shift_jis JSONパースエラー
Content-Type   JSON  結果       
shift_jis shift_jis 正常
Content-Type   JSON  結果       
utf-8(指定なし) utf-8 JSONパースエラー
Content-Type   JSON  結果       
shift_jis utf-8 文字化け

Content-Type と JOSN の文字コードが shift_jis の場合に正常に動作。

Fetch API の場合

Content-Type   JSON  結果       
utf-8(指定なし) shift_jis JSONパースエラー
Content-Type   JSON  結果       
shift_jis shift_jis JSONパースエラー
Content-Type   JSON  結果       
utf-8(指定なし) utf-8 正常
Content-Type   JSON  結果       
shift_jis utf-8 正常

JOSN の文字コードが utf-8 の場合に正常に動作。

結論

Content-Type の文字コードがなんであろうと、Fetch API で読み込み JSON の文字コードを utf-8 にしておけば大丈夫そうな感じではある。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした