Flask で API を実装する方法をまとめました。
環境
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.3 LTS (Bionic Beaver)"
ディレクトリを用意する
$ cd ~
$ mkdir python/api
$ cd python/api
プログラムを作成する
/hello にアクセスしたらメッセージを返す API を用意します。
$ vi app.py
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/hello')
def hello_world():
return jsonify({'message': 'Hello world!'})
仮想環境作成
$ sudo apt install -y python3 python3-venv python3-pip python3-dev
$ python3 -m venv api
Flask 実行
仮想環境をアクティベートして Flask を実行します。
Flask にはデバッグ用にビルトインサーバーが入っています。
$ source api/bin/activate
(api)$ pip3 install flask jsonify
(api)$ flask run
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
動作確認
/hello にアクセスしたら以下のような JSON が返ってきました。
$ curl http://localhost:5000/hello
{'message': 'Hello world!'}