ホームページ ウェブフロントエンド htmlチュートリアル HTTPステータスコードを設定する正しい方法

HTTPステータスコードを設定する正しい方法

Jan 05, 2024 am 08:32 AM
httpステータスコード設定 正しい http ステータス コード httpステータスコードを設定する

HTTPステータスコードを設定する正しい方法

HTTP ステータス コードを正しく設定するには、特定のコード例が必要です

HTTP ステータス コードは、ネットワーク通信中にサーバーからクライアントに返されるステータス表現です。現在のリクエストの処理ステータスをクライアントに通知します。 Web アプリケーションを設計および開発する場合、HTTP ステータス コードを正しく設定することが特に重要です。これは、リクエストと応答をより適切に処理し、ユーザーに優れたユーザー エクスペリエンスを提供するのに役立ちます。この記事では、コード例を示しながら、一般的な HTTP ステータス コードとそれらを正しく設定する方法を紹介します。

  1. 1xx 情報

1xx ステータス コードは、サーバーがクライアントのリクエストを受信したが、まだ処理中であることを示します。ほとんどの場合、これらのステータス コードは開発者によって一般的に使用されません。

  1. 2xx 成功クラス (成功)

2xx ステータス コードは、サーバーがクライアントの要求を正常に受信して処理したことを示します。一般的に使用される 2xx ステータス コードとその用途は次のとおりです。

  • 200 OK: リクエストは成功しました。サーバーはリクエストを正常に処理し、対応する情報を返しました。これは通常、最も一般的なステータス コードの 1 つです。
  • 201 作成されました: リクエストは成功し、作成されました。通常、新しいユーザーの追加や新しい記事の作成など、リソースを作成するリクエストに使用されます。

サンプル コード:

@app.route('/users', methods=['POST'])
def create_user():
    # 创建用户逻辑
    # ...
    return jsonify({'message': 'User created'}), 201
ログイン後にコピー
  • 204 コンテンツがありません: リクエストは成功しましたが、コンテンツがありません。リソースの削除など、特定のデータを返す必要のないリクエストを処理するために使用されます。

サンプル コード:

@app.route('/users/<int:user_id>', methods=['DELETE'])
def delete_user(user_id):
    # 删除用户逻辑
    # ...
    return '', 204
ログイン後にコピー
  1. 3xx リダイレクト クラス (リダイレクト)

3xx ステータス コードは、クライアントからのさらなる操作が必要であることを示します。完全に質問してください。一般的に使用される 3xx ステータス コードとその用途は次のとおりです。

  • 301 Moved Permanently: 永続的なリダイレクト。要求されたリソースが新しい URL に移動されたため、新しい URL を使用してアクセスする必要があることを示します。

サンプルコード:

@app.route('/old-url')
def old_url():
    return redirect('/new-url', code=301)
ログイン後にコピー
  • 302 Found (または 307 Temporary Redirect): 一時的なリダイレクト。要求されたリソースが一時的に新しい URL に移動されましたが、クライアントは元の要求メソッド (GET/POST) を維持する必要があることを示します。

サンプル コード:

@app.route('/old-url')
def old_url():
    return redirect('/new-url', code=302)
ログイン後にコピー
  1. 4xx クライアント エラー クラス (クライアント エラー)

4xx ステータス コードは、クライアントのリクエストが正しくないことを示します。サーバーはそれを処理できません。一般的に使用される 4xx ステータス コードとその用途は次のとおりです。

  • 400 Bad Request: リクエストが正しくありません。通常、リクエストパラメータが欠落しているか、形式が正しくない場合に使用されます。

サンプルコード:

@app.route('/users', methods=['POST'])
def create_user():
    username = request.form.get('username')
    if not username:
        return jsonify({'error': 'Username is required'}), 400
    # ...
    return jsonify({'message': 'User created'}), 201
ログイン後にコピー
  • 401 権限なし: 権限がありません。リクエストには認証が必要ですが、クライアントが有効な資格情報を提供しなかったことを示します。

サンプル コード:

@app.route('/admin')
@auth_required
def admin_page():
    # ...
ログイン後にコピー
  • 404 Not Found: リソースが存在しません。要求された URL アドレスに対応するリソースがないことを示します。

サンプル コード:

@app.route('/users/<int:user_id>')
def get_user(user_id):
    user = User.query.get(user_id)
    if not user:
        return jsonify({'error': 'User not found'}), 404
    return jsonify({
        'id': user.id,
        'username': user.username
    })
ログイン後にコピー
  1. 5xx サーバー エラー クラス (サーバー エラー)

5xx ステータス コードは、サーバーの実行中にエラーが発生したことを示します。リクエストの処理中にエラーが発生しました。一般的に使用される 5xx ステータス コードとその用途は次のとおりです。

  • 500 Internal Server Error: サーバーの内部エラー。サーバーがリクエストを処理中に不明なエラーが発生したことを示します。

サンプル コード:

@app.route('/users')
def get_users():
    try:
        users = User.query.all()
        return jsonify([user.to_dict() for user in users])
    except Exception as e:
        return jsonify({'error': 'Internal Server Error'}), 500
ログイン後にコピー

HTTP ステータス コードを正しく設定することで、リクエストと応答をより適切に処理し、ユーザーに優れたユーザー エクスペリエンスを提供できます。実際の開発では、特定のビジネス ニーズと API 設計仕様に基づいて、適切な HTTP ステータス コードを選択することが非常に重要です。同時に、コードの可読性と保守性を向上させるために、数値を直接使用するのではなく、Web フレームワークによって提供されるステータス コード定数を使用することをお勧めします。

以上がHTTPステータスコードを設定する正しい方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

&lt; Progress&gt;の目的は何ですか 要素? &lt; Progress&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:34 PM

この記事では、HTML&lt; Progress&gt;について説明します。要素、その目的、スタイリング、および&lt; meter&gt;との違い要素。主な焦点は、&lt; Progress&gt;を使用することです。タスクの完了と&lt; Meter&gt; statiの場合

HTMLは初心者のために簡単に学ぶことができますか? HTMLは初心者のために簡単に学ぶことができますか? Apr 07, 2025 am 12:11 AM

HTMLは、簡単に学習しやすく、結果をすばやく見ることができるため、初心者に適しています。 1)HTMLの学習曲線はスムーズで簡単に開始できます。 2)基本タグをマスターして、Webページの作成を開始します。 3)柔軟性が高く、CSSおよびJavaScriptと組み合わせて使用​​できます。 4)豊富な学習リソースと最新のツールは、学習プロセスをサポートしています。

&lt; datalist&gt;の目的は何ですか 要素? &lt; datalist&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:33 PM

この記事では、HTML&lt; Datalist&GT;について説明します。オートコンプリートの提案を提供し、ユーザーエクスペリエンスの改善、エラーの削減によりフォームを強化する要素。

&lt; meter&gt;の目的は何ですか 要素? &lt; meter&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:35 PM

この記事では、html&lt; meter&gt;について説明します。要素は、範囲内でスカラーまたは分数値を表示するために使用され、Web開発におけるその一般的なアプリケーション。それは差別化&lt; Meter&gt; &lt; Progress&gt;およびex

ビューポートメタタグとは何ですか?レスポンシブデザインにとってなぜそれが重要なのですか? ビューポートメタタグとは何ですか?レスポンシブデザインにとってなぜそれが重要なのですか? Mar 20, 2025 pm 05:56 PM

この記事では、モバイルデバイスのレスポンシブWebデザインに不可欠なViewportメタタグについて説明します。適切な使用により、最適なコンテンツのスケーリングとユーザーの相互作用が保証され、誤用が設計とアクセシビリティの問題につながる可能性があることを説明しています。

&lt; iframe&gt;の目的は何ですか タグ?使用する際のセキュリティ上の考慮事項は何ですか? &lt; iframe&gt;の目的は何ですか タグ?使用する際のセキュリティ上の考慮事項は何ですか? Mar 20, 2025 pm 06:05 PM

この記事では、&lt; iframe&gt;外部コンテンツをWebページ、その一般的な用途、セキュリティリスク、およびオブジェクトタグやAPIなどの代替案に埋め込む際のタグの目的。

HTML、CSS、およびJavaScriptの役割:コアの責任 HTML、CSS、およびJavaScriptの役割:コアの責任 Apr 08, 2025 pm 07:05 PM

HTMLはWeb構造を定義し、CSSはスタイルとレイアウトを担当し、JavaScriptは動的な相互作用を提供します。 3人はWeb開発で職務を遂行し、共同でカラフルなWebサイトを構築します。

HTMLでの開始タグの例は何ですか? HTMLでの開始タグの例は何ですか? Apr 06, 2025 am 12:04 AM

Anexampleapalofastartingtaginhtmlis、それはaperginsaparagraph.startingtagsaresentionentientiontheyinitiateelements、definetheirtypes、およびarecrucialforurturingwebpagesandcontingthomedomを構築します。

See all articles