• Skip to main content
  • Skip to secondary menu
  • Skip to primary sidebar
  • Skip to footer

AI活用エンジニアへの道

生成AI時代のエンジニアの生き方を考えるメディア(作成途中)

  • コラム
  • 生成AI
  • プログラミング
    • Python入門
    • Flask入門
    • Django入門
  • プロフィール
Home / プログラミング / Flask / Flaskで404, 500などのエラーハンドリングを行う方法についてまとめました

Flaskで404, 500などのエラーハンドリングを行う方法についてまとめました

1 404エラー、500エラーなどエラーを別のサイトに遷移させる(エラーハンドリング)
2 関連記事

404エラー、500エラーなどエラーを別のサイトに遷移させる(エラーハンドリング)

Flaskでエラーハンドリングをするには、関数のデコレータ関数として@app.routeとするかわりに、
@app.errorhandlerとすればよい。

ステータスコードには、以下のようなものがあり、そのエラーが発生した場合に実行する関数を記述する。

400 不正な構文、無効なリクエストメッセージ、または不正なリクエストのために、サーバーがクライアントによって送信されたリクエストを処理されなかったことを示す
403 ユーザーにアクセス権がなく閲覧禁止になっていることを示す
404 URLに対応するページが存在しないことを示す
500 インターナルサーバエラー、サーバ側の処理に問題があることを示す

では、以下に具体例を記述する。

Example

  • @app.errorhandlerを指定して、エラーコードに対して実行される処理を記述する

from flask import Flask, render_template, redirectapp = Flask(__name__)

@app.errorhandler(404) # 404エラーが発生した場合の処理
def error_404(error):
    return render_template('404.html')

上の例では、app.errorhandlerを使って404エラーの場合に、404.htmlを表示するように設定した。
(404エラーは、URLに対応するページが存在しない場合に遷移される)

  • 404.htmlの実装
<p>404エラーが発生しました</p>

このようにすると、http://127.0.0.1:5000/に遷移した場合以下の画面(404.html)が表示される。

  • http://127.0.0.1:5000/に遷移する(404エラーが発生しましたと表示される)


« Previous

リダイレクトをする方法

Next »

abortで例外を発生させる方法


Flask入門記事一覧はこちら

関連記事

FlaskでFormを用いてPOSTリクエストを行い、送信された値を取得する
FlaskでFormを用いてPOSTリクエストを行い、送信さ…
Flaskでabortを用いてHTTPException例外を強制的に発生させる
Flaskでabortを用いてHTTPException例外…
flaskでリダイレクト処理を行う(flask.redirect)
flaskでリダイレクト処理を行う(flask.redire…
Flaskのテンプレートでurl_forを用いてリンク作成、画像表示を行う。
Flaskのテンプレートでurl_forを用いてリンク作成、…
Flaskのテンプレートのフィルターを自作する方法についてまとめました
Flaskのテンプレートのフィルターを自作する方法についてま…
Flaskのテンプレートのフィルター機能の利用、フィルター一覧
Flaskのテンプレートのフィルター機能の利用、フィルター一…

Primary Sidebar

人気記事

  • 1
    PyCharm,IntelliJのおすすめプラグイン一覧
  • no image 2
    Python未経験だが、フリーランスの案件に採用さ…
  • 3
    ITエンジニアとしてスキルを高めるためのUdemy講…
  • 4
    アメリカのシリコンバレーでプログラミングを無…

特集記事

  • 1
    Cursorの使用のポイントとコツ(コード補完、イ…
  • 2
    ITエンジニアとしてスキルを高めるためのUdemy講…

目次

1 404エラー、500エラーなどエラーを別のサイトに遷移させる(エラーハンドリング)
2 関連記事
StartCode ロゴ
AI時代のエンジニアを最速で育てる
法人向けIT研修で即戦力を育成しています。詳しくはお問い合わせください。
▶ 詳細はこちら
Flask講座
【Udemy】Flask入門講座(0からFlaskを学習: Python講座つき)
受講生6500人ほどの人気講座。<strong>View, Template, Model</str...
詳細 ▶

Footer

利用規約