Flask+uWSGIでAPIを実装する方法まとめ

Flask

Flask + uWSGI で API を実装する方法をまとめました。

スポンサーリンク

WSGI

WSGI(Web Server Gateway Interface)とは Python で Web サーバーと Web アプリケーションを接続するための標準化されたインターフェース定義です。
Flask は WSGI に対応しています。

uWSGI

uWSGI は WSGI アプリケーションコンテナで HTTP クライアントからのリクエストを WSGI アプリケーションに転送してくれます。
イメージはこんな感じです。

HTTP Client <-> uWSGI <-> Flask

uWSGI インストール

$ cd ~/python/api
$ source api/bin/activate
(api)$ pip3 install uwsgi

uWSGI 実行

Flask は以下の記事で実装済みとします。

$ uwsgi --http=0.0.0.0:8000 --wsgi-file=app.py --callable=app
$ curl http://localhost:8000/hello
{'message': 'Hello world!'}

uWSGI 経由で Flask の API を実行できているようです。

設定ファイル使用

引数に指定した設定を ini にまとめます。

$ vi uwsgi.ini
$ uwsgi uwsgi.ini
[uwsgi]

wsgi-file=app.py
callable=app
http=0.0.0.0:8000
$ curl http://localhost:8000/hello
{'message': 'Hello world!'}

これで Flask + uWSGI で API を叩けるようになりました。

タイトルとURLをコピーしました