Pythonでfalconを用いて簡易APIサーバーを作る。
Python 3.6 です。
falcon を使った簡易APIサーバーです。自然言語処理のブラウザインターフェースを作ろうとして必要になったので、メモとして残します。
実装
falcon をインストールします。
pip install falcon
コードは以下。
import falcon import json import sys from wsgiref import simple_server class Number(object): def on_get(self, req, resp): result = req.params values = [int(v) for v in result["values"].split("_")] resp.body = json.dumps({ "answer": sum(values) }) if __name__ == '__main__': app = falcon.API() app.add_route("/", Number()) httpd = simple_server.make_server("127.0.0.1", int(sys.argv[1]), app) httpd.serve_forever()
req でディクショナリを受け取るので、json文字列を返します。
この例だと足し算を行うプログラムです。
実行
以下でサーバーを起動します。例として port 13337 で起動します。
python server.py 13337
そしてブラウザで
localhost:13337?values=1_2_3_4_5
と入力すると、足し算が行われて、ブラウザに
{ "answer": 15 }
と表示されます。
エラー処理をきちんと追加すれば使用できそうです。