PythonでBottleを用いてREST APIを構築しすべての情報を表示する

PythonでBottleを用いてREST APIを構築しすべての情報を表示してみます。

今回はBottleを用います。このライブラリ・モジュールはPythonの標準ライブラリではありませんので、事前にインストールする必要があります。

■Python

今回のPythonのバージョンは、「3.7.9」を使用しています。(Windows10)(pythonランチャーでの確認)

■Bottleを用いてREST APIを構築しすべての情報を表示する

では、早速、Bottleを用いてREST APIを構築しすべての情報を表示するスクリプトを書いていきます。

■コード

from bottle import run,get
import json

test = [{'名前':'田中','出身':'大阪','年齢':'23'},
        {'名前':'佐々木','出身':'奈良','年齢':'25'},
        {'名前':'小島','出身':'京都','年齢':'27'}]

@get('/test')
def gettest():
    return json.dumps(test, ensure_ascii=False)

run(host='localhost',port=8080,debug=True)

「from import」でbottleモジュールのget,runを呼び出します。そして、jsonモジュールを呼び出します。

呼び出した後にtestという変数を定義し、その中で”[ ]”(角括弧)と、”{ }”(波括弧)を用いて辞書を作成します。

作成後、get()を用いて「/test」というURLパスを設定します。設定後、def文を用いて、gettest()という関数を定義し、設定したURLパスとリンクします。なお、gettest()の処理はreturnでtest変数を返すというものです。この時に、json.dumps()を用いて括弧内に引数,パラメータとして、test変数と「ensure_ascii=False」を渡します。これで日本語がUnicodeとして出力されるのを防ぎます(文字化け対策)。

関数を定義後、run()を用いて、組み込みの開発サーバーを起動します。括弧内には引数,パラメータとして、host,port,debugを渡します。

■実行・検証

このスクリプトを「b_test_2.py」という名前で、Pythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。

実行してみると、「Listening on http://localhost:8080/ Hit Ctrl-C to quit.」といったメッセージが出力されますので、http://localhost:8080/をコピーし、Webブラウザを起動します。

起動後、アドレスバーにコピーしたURLを貼り付けて後ろに「/test」と入力し、アクセスします。

アクセスすると、今回Bottleを用いて構築したREST APIから情報を出力することができました。

コメント

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