PythonでIoT用ミニマムな簡易APIサーバーを作る

Pythonでミニマム(最小形態)でサーバーを作ってみようと思う。

こんにちは、北神です。

IoTの開発を行う際に、ちょっとテストでサーバーが欲しい!という時に、Linuxを立ち上げアレやコレを入れて、
HTTPのPOSTやGETを取得するサーバーを組むのは時間がかかって仕方がない。

そこで、Pythonでお手軽にAPIサーバーの作り方をまとめていきます。

■ bottleを始めてみる

使うライブラリは「bottle」です。

このbottleは、高性能ではありませんが、数行でサーバーを立ち上げる事ができ、
POSTやGETといったREST-fullの構造を構築する事ができます。
また、HTMLの表示等もできますので、簡易な試験サーバーとして使用する際に重宝します。

早速インストールします

pip3 install bottle

これだけです。
また、bottleは1ソースで構成されたライブラリであることも人気の秘訣であり、以下のULRよりダウンロードすることで使用することも可能です。
https://bottlepy.org/bottle.py

早速、簡単なので以下のソースをテキストに貼り、server.pyと保存してみましょう。

from bottle import Bottle, run , post, get

app = Bottle()

@app.route('/')
def hello():
    return "Hello World!"

run(app, host='localhost', port=8080)

実行してみます。

python3 server.py

すると、コマンドラインには

Bottle v0.12.19 server starting up (using WSGIRefServer())...
Listening on http://localhost:8080/
Hit Ctrl-C to quit.

と表示されますので、試しにブラウザにて

localhost:8080 と入力して表示します。

Hello World! と表示されます。

■ bottleでAPI風を作成

早速API風な機能をつけていきます。

GETの機能は

@app.get('/get')
    def get_acction():
    return "GET Hello!"

で作成でき、

POSTの機能は

@app.post('/post')
    def post_acction():
    return "Post Hello!"

で作成できます。

これで、IoT機器でREST-fullの対応が試せる様になります。

ではでは。

関連記事

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA