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/:idIDが存在しない場合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、エラーバウンダリ、リダイレクトロジックをテストします。