FastAPI入門!初心者でも15分でできるWebAPIの作り方と基礎知識

Pythonを使って「Web API(ウェブ エーピーアイ)」を作ってみたいけれど、どこから手を付ければいいか分からないとお悩みではありませんか?Web APIとは、アプリやWebサイト同士がデータをやり取りするための仕組みのことです。Web APIを自作できるようになると、Webサービスの開発や副業での案件獲得の幅が大きく広がります。

この記事では、現在多くのエンジニアから注目を集めているPythonの最新フレームワーク「FastAPI」について、初心者向けに分かりやすく解説します。専門用語をなるべく使わずに、環境構築から最初のAPI作成までを丁寧に順を追って説明しますので、ぜひ一緒に手を動かしながら挑戦してみましょう。

FastAPI入門:なぜ今FastAPIが注目されているのか?

FastAPI(ファスト エーピーアイ)は、PythonでWeb APIを素早く、簡単に構築するために作られたWebフレームワーク(開発の土台となる仕組み)です。2018年に登場して以来、その使いやすさと処理速度の速さから急速に人気を集めています。

初心者がFastAPIを学ぶべき主な理由は、以下の3つです。

  • 開発速度と処理速度が圧倒的に速い:名前の通り「Fast(速い)」が特徴です。コードの記述量が少なくて済むため開発が素早くでき、プログラムの実行スピードもPythonのWebフレームワークの中でトップクラスです。
  • 操作画面(ドキュメント)が自動で作られる:通常、作成したAPIの使い方を記載した説明書(ドキュメント)を手作業で作る必要がありますが、FastAPIはコードを書くだけで綺麗なテスト用画面を自動生成してくれます。
  • エラーに気づきやすい:Pythonの「型ヒント」という仕組みを活用しているため、コードの書き間違いやデータの型ミスをプログラムを実行する前に教えてくれます。

このように、初心者でもバグの少ないコードを効率よく書ける仕組みが整っているのがFastAPI最大の魅力です。

FastAPI入門:開発に必要な事前準備とインストール

ここからは、実際にFastAPIを動かすための準備を進めていきましょう。事前に「Python」がパソコンにインストールされている必要があります。まだインストールしていない場合は、Python公式サイトから最新版をセットアップしておいてください。

準備ができたら、コマンドプロンプト(Windows)またはターミナル(Mac)を開き、FastAPIと、Webサーバーを動かすためのツールである「Uvicorn(ウヴィコーン)」をインストールします。以下の命令文を1行ずつ実行してください。

pip install fastapi

pip install “uvicorn[standard]”

これだけで、FastAPIを使った開発を開始する環境が整いました。難しい設定ファイルなどを書く必要がない点も、初心者にとって嬉しいポイントです。

FastAPI入門:15分でできる!初めてのWebAPI作成手順

環境が整ったら、さっそく「Hello World」というメッセージを返す最もシンプルなWeb APIを作ってみましょう。

ステップ1:プログラムファイルを作成する

お好きなフォルダを作成し、その中に「main.py」という名前のテキストファイルを作成します。そして、そのファイルの中に以下のコードを書き込んで保存してください。

from fastapi import FastAPI

app = FastAPI()

@app.get(“/”)
def read_root():
    return {“message”: “Hello World”}

コードの意味は非常にシンプルです。「app = FastAPI()」でFastAPIの本体を呼び出し、「/」というURLにアクセスがあった際に「Hello World」というデータのまとまり(JSON形式)を返す、という指示を出しています。

ステップ2:Webサーバーを起動する

ファイルの保存ができたら、コマンドプロンプトまたはターミナルで「main.py」が存在するフォルダに移動し、以下のコマンドを実行します。

uvicorn main:app –reload

画面に「Application startup complete.」という表示が出れば、Webサーバーが正常に起動しています。なお、「–reload」というオプションを付けておくことで、コードを修正して保存した際に自動でサーバーが更新されるようになります。

ステップ3:ブラウザでアクセスして動作確認をする

サーバーが起動したら、普段使っているWebブラウザを開き、アドレスバーに以下のURLを入力してアクセスしてみましょう。

http://127.0.0.1:8000

画面に「{“message”: “Hello World”}」と表示されれば成功です!たった数行のコードで、あなただけのWeb APIが動き始めました。

ステップ4:自動生成されたWeb画面を確認する

FastAPIの真骨頂である自動ドキュメント機能も確認してみましょう。ブラウザのアドレスバーに以下のURLを入力します。

http://127.0.0.1:8000/docs

すると、「Swagger UI」と呼ばれるグラフィカルな画面が表示されます。ここでは作成したAPIの一覧を確認できるだけでなく、画面上のボタンを押すだけで実際にAPIへリクエストを送信して動作テストを行うことができます。

FastAPI入門に関するよくある質問

Q1. Python初心者でも、いきなりFastAPIから学び始めて大丈夫ですか?

はい、問題ありません。FastAPIは文法がシンプルで覚えることが少ないため、むしろPythonの基本文法(変数・関数・辞書型など)を学んだ直後の学習教材として非常に適しています。小さなAPIを作りながらPythonの理解を深めていく学習方法がおすすめです。

Q2. 昔からあるDjangoやFlaskといったフレームワークと何が違いますか?

Django(ジャンゴ)はWebサイトに必要な機能がすべて揃った大型ツールボックスのようなもので、覚えることがたくさんあります。Flask(フラスコ)はシンプルですが、API開発に必要な機能を自分で追加していく必要があります。FastAPIは「API開発」に特化しており、最新のPython機能をフル活用して、高速かつ少ないコード量で開発できるように設計されています。

Q3. 作ったFastAPIのWebAPIはどのように活用できますか?

自作したFastAPIは、ReactやVue.jsといったフロントエンド技術と連携させて本格的なWebアプリを作ったり、AI・機械学習モデルを組み込んで「画像を送信すると自動で判定結果を返すWeb API」として副業案件や個人開発で活用することができます。

まとめ

今回は、Pythonの初心者向けにFastAPI入門として、概要から具体的なWeb APIの作成手順までを解説しました。

FastAPIを使えば、わずか数行のコードを書くだけで、高速で高機能なWeb APIを作成することができます。自動でドキュメントが生成される機能や、エラーが起きにくい構造は、これからプログラミングを深めていきたい初心者にとって強力な味方になります。

まずは今回紹介した「Hello World」を表示させる手順を実際に試してみて、Web API開発の第一歩を踏み出してみてください。慣れてきたら、名前や数値を送信して結果を返すような、少し複雑な仕組み作りにもチャレンジしてみましょう!

コメントを送信

CAPTCHA


You May Have Missed