DESIGN / CODE / INFRA / AI

解説

成功なのに本文がない?HTTPの204 No Contentを知ろう

通信が成功したのに、返ってきた本文が空。必ずしもエラーではなく、HTTPの204という「本文を返さない成功」の応答かもしれないよ。

成功なのに本文がない?HTTPの204 No Contentを知ろう
保存リストを見る →
この記事の道しるべ 5項目

通信が成功したのに、返ってきた本文が空。必ずしもエラーではなく、HTTPの204という「本文を返さない成功」の応答かもしれないよ。

ここでは、Webの通信で返る番号を見分ける練習をする。HTTPはブラウザとサーバーなどがやり取りする決まり。コードを書かず、架空の応答の読み方から始めよう。

200と204はどちらも成功の仲間

200 OKは成功を示し、通常は要求に応じた内容を返す。204 No Contentも要求の正常な処理を示すけれど、応答の本文は含めない。

たとえば、設定を保存したあとに新しいデータを返す必要がないAPIでは、204を使う設計がある。APIとは、プログラム同士が処理やデータをやり取りする入口のことだよ。何番を返すかは、そのAPIの仕様も確認する。

応答例 読み方
200とJSONの本文 成功してデータを返した例
204で本文なし 成功し、返す本文がない
500とエラーの本文 サーバー内部の問題を示す例

「本文がない」だけを見て、同じ種類の失敗だとまとめないことが大切。

JSONとして読む前に状態を確かめる

JSONは、文字や数値を決まった書式で表すデータ形式。空の文字列は、JSONの値ではないよ。204の本文を必ずJSONとして解析しようとすると、成功した処理なのに解析エラーが出る場合がある。

作る側では、応答番号とAPIの仕様に合わせて読み方を分ける。204なら完了表示だけにし、データを返す契約なら内容も確認する、といった設計になる。

ブラウザの開発者ツールで見る場所

  1. 自分で管理する練習ページを開く。
  2. 開発者ツールのNetwork欄を開き、通信を選ぶ。
  3. Statusと、応答本文の有無を見る。
  4. その通信が画面のどの操作に対応するか確かめる。

練習のために削除や決済を実行する必要はないよ。管理していないサイトでは、見えている通信だけから内部の保存結果まで断定しない。

空の画面と204を混同しない

HTMLの表示が壊れて真っ白になることと、APIが意図して本文なしを返すことは別。画面を直す前に、どのURLがどの番号で返ったかを確認しよう。

失敗側の番号は500と503の違いも参考になるよ。

参照した公式資料

確認日:2026年10月23日。練習例は架空のデータを使っています。

参考・出典

公開と変更の記録
  • :初回公開

日時は日本時間です。記載のある変更は、確認できた編集記録に基づきます。更新日の違いだけから変更内容を推測して載せることはありません。

更新・訂正の方針 →

みんなのコメント 0

感想や、試してみたことを聞かせてね。コメント・返信は承認後に公開されます。

最初のコメントをどうぞ。