すぐにできる!Python3とFalconを使ったAPIサーバ構築

      2017/07/18

こんにちは!
最近、”Python3″と”Falcon”を使ってAPIサーバを構築する機会があったので、その手段と手軽さを紹介します。

Falconとは

FalconはWebアプリのためのフレームワークの一つです。
“Flask”や”Bottle”のほうが圧倒的に聞き馴染みがあるんですが、このFalconは余計な機能がないのでとっても軽量、今回のAPIサーバを構築するにはぴったりでした。

実際に作る

準備

(Python3とpip3がインストールされている前提です)
最初に、Falconのパッケージをインストールします。

あと、起動には”Gunicorn”を使用するので、そちらもインストールします。

(ちなみにGunicornはPython製のWSGIサーバです)

ソースコード

このソースコードでは、”Access-Control-Allow-Origin”を全てに設定していますが、必要なければ、Class CORSMiddlewareごと消してしまっても大丈夫です。
(あとmiddleware=[CORSMiddleware()]を消してください)

今回は on_getにしてありますが、POSTで何が受け取って処理して返すことも可能です。
その場合は、on_postを使用すればOK

さらに詳しい情報は英語になりますが、こちらをどうぞ!

動作テスト

ターミナル上でGunicornを使って起動します。

起動すると今回のソースコードの場合は8080ポートがListen状態になります。

postmanなどのソフトを使って検証してみると実際に結果が得られると思います。

結果

かなり簡単にAPIサーバを構築できることが伝わったでしょうか?
実際に構築開始の事前調べから構築終了まで3,4時間ほどで終わりました。
(Access-Control-Allow-Originの問題解決とherokuへのデプロイ方法を検索したり失敗したりしなければもうちょっと早く終わったんじゃないかなと思います笑)
逆に他のフレームワークを使った場合とどれくらいのコード量で動作にどれくらいの差が生まれるのかは試してみないと確かなことはわからないのですが、Falconではベースがこのくらいのコード量とわかりました!

次回は実際に作ったAPIをつかったWebサイトの概要を書きたいと思います。
では!

 - IoT, その他, サービス, 作ってみた, 備忘録, 豆知識 , ,