404 Not Foundエラーレスポンスのモック

リソース識別子を含む構造化された404 Not Found JSONエラーレスポンスを生成。空状態やエラーバウンダリのテストに。

Error Responses

詳細な説明

404 Not Found

404レスポンスは、リクエストされたリソースが存在しないことを示します。これは400(不正な入力)や403(禁止)とは異なります。このモックは不足しているリソースのIDを含むクリーンなエラー構造を生成します。

レスポンス構造

{
  "error": {
    "code": "NOT_FOUND",
    "message": "Resource with ID 'a1b2c3d4-...' was not found.",
    "details": []
  }
}

404を返すタイミング

  • GET /api/users/:id IDが存在しない場合
  • PUT /api/users/:id 存在しないレコードを更新しようとした場合
  • DELETE /api/users/:id リソースが既に削除されている場合
  • 親が存在しないネストされたリソースへのアクセス

404 vs 410 Gone

リソースが存在したことがないか、その情報を明かしたくない場合は404 Not Foundを使用します。リソースが以前存在したが永久に削除されたことを確認できる場合は410 Goneを使用します。

フロントエンドでの処理

UIは404に遭遇した場合、意味のある空状態を表示するかリダイレクトする必要があります:

  • リスト表示へのリンク付き「見つかりません」イラストを表示
  • デバッグ用にエラーをログ記録
  • エンドユーザーに生のJSONを表示しない

セキュリティ上の考慮事項

404メッセージで情報を漏洩しないよう注意してください。「メールjohn@example.comのユーザーが見つかりません」と言うと、そのメールが登録されていないことが明らかになり、アカウント列挙攻撃に悪用される可能性があります。

ユースケース

ユーザーが削除された、または存在しないリソースに移動した際のAPIからの404レスポンスをシミュレートして、アプリケーションの空状態UI、エラーバウンダリ、リダイレクトロジックをテストします。

試してみる — API Response Mocker

フルツールを開く