ポイント&クリックだけでDB からREST API を作成できるCData API Server で、MySQL のデータからREST API を作ります。
##CData API Server をインストール##
http://www.cdata.com/jp/apiserver/
今回は、Windows 版で説明しています。
インストーラに従って、インストールを行ってください。
Windows 版もしくはJava/Linux 版を選択します。
インストール完了後にブラウザでAPI Server の管理コンソール画面が立ち上がります。インストール時に設定したadmin パスワードを入力してログインします。
管理コンソールで「情報」タブをクリックし、「30日の評価版をアクティベートする」をクリックします。
これで30日間の使用ライセンスが製品に設定されます。
##MySQL とAPI Server の接続を確立##
まずはこちらがデータソースとなるMySQL です。sakila というデモデータがあり、city というテーブルがあります。これをWeb API として公開します。
デモデータの落とし方
API Server のコンソールをブラウザで開きます。Windows メニューからCData API Server を開くと自動的にブラウザが立ち上がります。admin アカウントでログインします。
[設定]タブから[接続]をクリックします。
接続可能なデータソースが並んでいます。表示されているデータソースだけでなく、CData の対応する80以上のデータソースをAPI のデータソースとすることが可能です。
ここからMySQL のアイコンをクリックします。
MySQL の接続設定画面が開くので、接続情報を入力します。
##API として公開するリソースの設定##
[設定]→[リソース]をクリックして、リソースを追加するウィザードを開きます。
先ほど作成した接続をクリックして、[OK]を押します。
リソースとするテーブルのリストが表示されますので、選択して[OK]を押します。
続いて、テーブル内のカラムのリストが出るので、リソースとするカラムをチェックします。
これでAPI として公開するリソース設定が完了です。
##セキュリティ設定##
ユーザー認証の設定を行います。[設定]→[ユーザー]→[追加]でユーザーを追加します。
ユーザー名とGET、POST、PUT、DELETE などの権限を付与、レートリミットを設定します。
[保存]すると新しいユーザーが追加され、Auth トークンが発行されます。
これで設定は完了です。
##ブラウザからAPI を叩いてみる##
まずは、[API]タブからドキュメントを参照します。上のリソース設定のプロセスを行うとドキュメントは自動生成されます。
リソースの下のエンドポイント名をクリックするとAPI ドキュメント参照できます。
GET、POST、PUT、DELETE それぞれのURL およびJavaScript/CURL でのAPI のリクエスト方法やパラメータが記載されています。
GET の脇の http://localhost:8387/api.rsc/RESOURSE/ をブラウザで叩いてみましょう。初回はAuth トークンの認証が要求されます。上で作成したユーザー名とAuth トークンを入力します。
たしかに、JSON 形式でMySQL 内のデータが返ってきました。
すこしJSON が見やすいPOSTMAN というツールからも試してみましょう。
このように、ポチポチとクリックするだけで、DB からREST API が作れてしまいました。