Pythonでは、FastAPIを利用することで、Rest APIサービスを作成することができる。
Rest APIサービスについては、以下のサイトを参照のこと。
https://qiita.com/masato44gm/items/dffb8281536ad321fb08
今回は、Azure Portal上で作成したLinux系のOS(Ubuntu)をもつ仮想マシンに作成済の仮想環境(venv)で、FastAPIパッケージをインストールし、FastAPIを利用したPythonプログラムを作成し実行してみたので、その手順を共有する。
前提条件
下記サイトの手順に従って、Linux系のOS(Ubuntu)をもつ仮想マシンにPythonの仮想環境(venv)を作成済であること。
やってみたこと
FastAPIパッケージのインストール
前提条件の記事で作成した仮想環境(venv)である仮想環境(test1)で、FastAPIパッケージをインストールする。その手順は、以下の通り。
1) Azure Portalを起動し、Linux系のOS(Ubuntu)をもつ仮想マシンにログイン後、仮想環境(venv)である仮想環境(test1)を起動する。
2)「pip install fastapi」コマンドで、FastAPIをインストールする。
3)「pip install “uvicorn[standard]”」コマンドを実行した結果は、以下の通り。
4) インストール済のfastapi, uvicornを確認した結果は、以下の通り。
FastAPIを利用したプログラムの実行
前提条件の記事で作成した仮想環境(venv)である仮想環境(test1)で、FastAPIを利用したPythonプログラムを作成し実行する。その手順は、以下の通り。
1) 仮想環境(venv)である仮想環境(test1)をにおいて、FastAPIを利用したPythonプログラムを作成する。作成後のプログラムの内容は、以下の通り。
1 2 3 4 5 6 7 | from fastapi import FastAPI app = FastAPI() @app.get("/") def read_root(): return {"Hello": "FastAPI"} |
2)「uvicorn main:app –reload」コマンドで、Uvicornを使用したFastAPIアプリケーションを実行する。
なお、uvicornコマンドについては、以下のサイトを参照のこと。
https://qiita.com/sasiko_hari/items/e9b32ee9e8d4c3178d7d
3) 別セッションから「http://127.0.0.1:8000」にアクセスするため、「新しいセッション」ボタンを押下する。
4) 以下のように、別セッションが起動されることが確認できる。
5) 別セッションのコンソール上で、Linux系のOS(Ubuntu)をもつ仮想マシンにログインする。
6) 別セッションのコンソール上で「curl http://127.0.0.1:8000」を実行すると、以下のように、read_rootメソッドの戻り値が返却されることが確認できる。
7) uvicornコマンドを実行したコンソール上で、[Ctrl]+[C]キーを押下し、Uvicornを使用したFastAPIアプリケーションを停止する。
なお、仮想環境(conda)である仮想環境(test2)が存在すると、Uvicornを使用したFastAPIアプリケーション起動中にエラーが発生したため、以下のように、仮想環境(test2)を削除している。
要点まとめ
- Pythonでは、FastAPIを利用することで、Rest APIサービスを作成することができる。