回答受付が終了しました

ID非公開

2021/9/13 18:35

44回答

サーバーサイドからフロントにajaxで返すとき何故json形式にするのですか?

HTML、CSS38閲覧

回答(4件)

1

別にjsonにしなきゃダメってことではないです。htmlでもいいし、ただデータの垂れ流しでも良いですが、jsonにしておけば色々メリットがあるからよく使われます。 例えばhtmlを返す場合、基本的にはそのままブラウザに表示することしかできません。ごちゃごちゃやれば形を変えることは可能ですが、手間がかかるだけです。 jsonにしておけばブラウザ上のjavascriptでも、スマホのアプリでも、全く別のプログラム言語でも、ほぼどんな物でも読み取ることが可能ですし、しかもどのデータがどんな役割を持っているのかも、データの項目名を見ればある程度推測も可能です。 さらに、データ項目が増えても、その項目が不要な受信側プログラムなら変更しなくてもそのまま使用可能です。 データのみを送信して、レイアウトなどはクライアント側で担うことで、クライアント側の能力などに適したデータの見せ方をすることが簡単に行えます。 まぁcsvでもyamlでも似たようなことは可能ですが、特にjsonならそのままjavascritptオブジェクトにできる点もメリットです。

1人がナイス!しています

1

MVCモデル(およびその派生形のさまざまなモデル)の思想から来ています。 例えば、Yahoo!知恵袋を考えてください。クライアントはWebブラウザーの場合もありますし、スマホアプリの場合もあります。 このとき、サーバーはデータの管理だけを担当し、クライアントはそのデータをどのようにユーザーに見せるかを担当するという、分業になっています。 HTMLを返すということにすると、PC用なのかスマホ用なのか、サーバー側で判断して返さないといけないですよね。だから、そんなことはせず、JSONという純粋にデータだけの形で返すわけです。JSONデータをHTMLの形に変形するのは、クライアントの仕事というわけです。

1人がナイス!しています