Padrinoで簡易APIサーバーを構築してみました

はじめまして。WEBサービス開発グループで2018年度新入社員の松村です。

みなさんは、Padrinoを聞いたことがありますか?

まず、Padrinoについて簡単に説明させていただきます。

 

Padrinoとは

Sinatraを基にRubyで書かれた、MVC構造のWEBフレームワークです。

嬉しいポイントは、Ruby on Rails(以下 Rails)と同様Active Recordの恩恵を受けることができるという点です。

開発環境

OS : macOS High Sierra 10.13.6

Rubyバージョン: 2.3.7

RubyGemsバージョン : 2.7.6

Padrinoバージョン : 0.14.3

 

インストール方法

お使いのパソコンにRuby(Rubyバージョンが1.9以前だと、自分でRubyGemsをインストールする必要がある。)がインストールされている状態で下記コマンドを実行し、Padrinoをインストールします。

下記コマンドで実行結果のようにバージョンを表示し、インストールされたことを確認する。

実行結果

以上で環境構築は終了です。

 

では、本題に移ります。

今回は、サッカーチーム作成し、作成されたチームを取得したいと思います。

APIサーバの実装の仕方

1.プロジェクトを作成します。

2.1で作成したプロジェクトに移動し、必要なgemをインストールします

3.アプリケーションを作成します。

4.  チーム作成、取得用のコントローラを作成します。

5.  チームを登録するモデルを作成し、DBに反映させます。

以上で下準備は完了です。

続いて、主にファイルを編集していきます。

6. 今回はGetリクエストへのレスポンスをjson形式にするため、tilt-jbuilderというgemを使用します。

7. Get、Postリクエスト用のルーティングを設定をします。

8. 設定完了後、Getリクエストのレスポンス用にjbuilderファイルを作成します。

9. 今回は、CSRF設定をfalseにします。

10. プロジェクト下でローカルサーバーを立ち上げます。

11.実際にcurlコマンドを実行し、postリクエストでチーム作成後、getリクエストで取得できるか確認しましょう。

実行結果

 

無事に新チーム作成、チームを取得できていますね。

今回はPadrinoを用いて、簡易APIサーバーを構築しました。

今回初めて触れ、Railsに似ており、Railsユーザーは比較的容易に開発を行えるのではないかと感じました。

やはり、Active Recordを使用できる点が一番嬉しいですね。