- 200 OK: リクエストが成功し、要求されたリソースが正常に返されました。
- 301 Moved Permanently: 要求されたリソースが新しい場所に移動されました。
- 400 Bad Request: クライアントのリクエストが無効または不正な形式であるため、サーバーがリクエストを解釈できません。
- 403 Forbidden: クライアントが要求されたリソースにアクセスする権限がありません。
- 404 Not Found: 要求されたリソースが見つかりませんでした。
- 500 Internal Server Error: サーバー内部でエラーが発生しました。
- 503 Service Unavailable: サーバーが一時的にリクエストを処理できない状態です。
これらは一部の一般的なステータスコードであり、さまざまな状況に応じて他のステータスコードも存在します。
エラーハンドリングにおいては、これらのステータスコードを適切に処理することが重要です。クライアント側では、適切なエラーメッセージを表示したり、ユーザーに適切なアクションを促したりすることができます。以下に、いくつかの簡単な方法とコード例を示します。
- Pythonでのエラーハンドリングの例:
import requests
try:
response = requests.get('https://example.com')
response.raise_for_status() # ステータスコードがエラーの場合、例外を発生させる
except requests.exceptions.HTTPError as err:
print(f"HTTPエラーが発生しました: {err}")
except requests.exceptions.RequestException as err:
print(f"リクエストエラーが発生しました: {err}")
- JavaScriptでのエラーハンドリングの例:
fetch('https://example.com')
.then(response => {
if (!response.ok) {
throw new Error(`HTTPエラーが発生しました: ${response.status}`);
}
return response.json();
})
.catch(error => {
console.error(`エラーが発生しました: ${error}`);
});
これらの例では、HTTPリクエストの応答をチェックし、エラーが発生した場合に適切な処理を行っています。
このように、適切なHTTPステータスコードを処理することは、ウェブ開発において重要な要素です。エラーハンドリングの実装は、ユーザーエクスペリエンスの向上とセキュリティの強化につながります。