こんにちは、ITエンジニアのz_a_k_iです!^^
今回はPythonのFlaskを使ってバックエンドAPIを作成します。Pythonの開発環境の構築に始まり、簡単なバックエンドAPIを作成する方法をご紹介します。
Flaskの開発環境構築
Flaskを動かすための環境を構築します。
Pythonのインストール
PythonはFlaskを動かすための基盤となる言語です。
最新版のPythonをインストールすることで、セキュリティの強化と最新のライブラリが利用可能になります。
インストール手順は簡単で、公式サイトからダウンロードしたインストーラーを実行するだけです。
仮想環境の作成
仮想環境は、プロジェクトごとにPythonの実行環境を分離するためのツールです。
実行環境を分離することで、異なるプロジェクト間でのライブラリのバージョン衝突を防ぐことができます。
以下のコマンドを使って、プロジェクトディレクトリ内に仮想環境を作成します。
python -m venv venv
仮想環境のアクティベーション
仮想環境を有効にすることで、その環境内でインストールされたパッケージとPythonインタープリタを使用することができます。
仮想環境を有効化するには、以下のコマンドを実行します。
source venv/bin/activate # Unix系OSの場合
venv\Scripts\activate # Windowsの場合
Flaskのインストール:
仮想環境をアクティベートした状態で以下のコマンドを実行することで、Flaskをインストールします。
以下コマンドを実行することで、Flaskを使った開発が可能になります。
pip install Flask
サンプルプログラムの作成
次に、簡単なAPIを作成していきます。
アプリケーションファイルの作成
app.pyファイルを作成し、以下のソースコードを貼り付けます。
このソースコードは、/show_params
エンドポイントにGETリクエストを送信すると、クエリパラメータを受け取り、サーバーのコンソールに表示し、JSON形式でクライアントに返す簡単なFlask WebAPIです。
debug=True
オプションを付けることで、コードに変更があった際にサーバが自動的に再起動し、エラーが発生した場合にはデバッグ情報が表示されます。
debug=True
は開発中に役立ちますが、本番環境ではセキュリティ上の理由からdebug
モードを無効にすることをお勧めします。
app.py
はFlaskアプリケーションのエントリーポイントです。ここにルーティングとビュー関数を定義します。
@app.route('/show_params')
は、http://127.0.0.1:5000/show_paramsにアクセスがあったときに
関数を呼び出すようFlaskに指示します。show_params
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/show_params', methods=['GET'])
def show_params():
# リクエストからパラメータを取得
args = request.args
# パラメータを画面に表示(実際のプロダクションコードでは、フロントエンドにデータを送信するためのテンプレートを使用します)
print(args)
# パラメータをそのままレスポンスとして返す
return jsonify(args)
if __name__ == '__main__':
app.run(debug=True)
Flaskの実行
APIの実行
以下の
コマンドを実行すると、Flaskアプリケーションが起動し、デフォルトでlocalhost
の5000
番ポートで待ち受け状態になります。
これにより、開発中のAPIをテストすることができます。
flask run
アクセステスト
ブラウザでhttp://localhost:5000/
show_params/test=valueのように実行すると、画面上にtestというリクエストパラメータの値 value というレスポンスが返ってきます。
レスポンスが帰ってこれば、」Flaskが正しく動作しています。
まとめ
本記事では、Flaskを使用してバックエンドAPIを作成する方法について記載しました。
FlaskはPythonで書かれた軽量なウェブフレームワークで、簡単にウェブアプリケーションやAPIを構築することができます。
本記事で作成したアプリケーションをAWS Fargateなどと組み合わせることで簡単にサービスを公開できます。
本記事が皆様の参考となりましたら幸いです。
コメント