LoginSignup
2

More than 3 years have passed since last update.

posted at

updated at

CData Software ハンズオン(RDBからWebAPIをポイント&クリックで作成)

使用するCData製品

MySQLへの接続確認

(注意)CData準備のハンズオン環境のマシンは、MySQL Community Serverのインストール、および、サンプルデータベースの作成済です。

MySQLのインストール、および、サンプルデータベースの設定を実施していない場合は下記の記事にしたがってMySQLの環境を準備してください。

WindowマシンへのMySQL Community Serverのインストール、および、サンプルデータベースの作成方法

MySQL Workbenchを起動して、MySQLへ接続して、 サンプルの「sakila」データベース内の「actor」テーブルのデータを表示してみます。

image.png

CData API Serverのインストール

以下のリンクからCData API Serverのビルドをダウンロードします。

ダウンロードされた「CDataAPIServer.exe」ファイルを起動します。下記のようなインストーラが起動するので、ライセンス契約書を確認した上で、デフォルト設定のままインストールを進めて完了させます。

image.png

途中、APIServerの管理者(admin)のパスワードを設定する画面が表示されるので、設定したパスワードは手元に控えておいてください。

image.png

インストールが完了するとWindows右下の通知エリアに青い雲のアイコンのCData APIServerに組み込まれているWebサーバが起動します。

image.png

また、デフォルトブラウザが起動してCData APIServerの管理コンソールへのログイン画面が起動します。

image.png

MySQLへの接続設定

CData APIServerの管理コンソールへのログイン画面で、ユーザ名「admin」、インストーラで設定したパスワードを入力して「サインイン」します。サインイン出来ると「情報」ページが表示されます。ライセンスが認証されていない旨のメッセージが表示されるので、「30日間の評価版をアクティベーションする」ボタンをクリックして、表示されるダイアログに「名前:」「Eメール」と入力し、「Terms and Conditions」を確認したら「評価版をアクティベーションする」ボタンをクリックします。

image.png

ブラウザのリフレッシュをして、プロダクトーに30日間の試用版(30 DAY TRIAL VERSION - 30 DAYS LEFT)が表示されることを確認します。

image.png

「設定 > 接続」タブを開き、Databases内の「MySQL」を選択します。

image.png

MySQLへの接続情報を設定します。設定後「Test Connection」ボタンをクリックして「The connection was successful.」が表示されればCDataAPIServerからMySQLへ接続出来たことになります。接続情報を「Save Changes」ボタンで保存します。

image.png

設定項目 設定値
Name 任意(例では「MySQL」と設定)
Provider Class 変更不可(「System.Data.CData.MySQL」と設定)
Settings Format デフォルト値 「Property List」
Server MySQLがインストールされているマシン名、もしくは、IPアドレス(例では「localhost」と設定)
Database MySQLのデータベース(例では「sakila」と設定)
User MySQLへの接続ユーザ(例では「root」と設定)
Password MySQLへの接続パスワード

接続情報が保存されてConnectionsにMySQLへの接続情報が表示されることを確認します。

image.png

APIエンドポイントの作成

「設定 > リソース」タブを開き、「リソースを追加...」ボタンをクリックします。

image.png

先の手順で作成したMySQLへのデータ接続設定を選択して「次へ」ボタンをクリックします。

image.png

MySQL内のテーブルおよびビューが一覧として表示されます。今回は[sakila].[actor]テーブルを選択して「次」ボタンをクリックします。

image.png

[sakila].[actor]テーブル内の項目一覧が表示されます。デフォルトでは、「操作:」に全てチェックが付与されており、GET(SELECT)、POST(INSERT)、PUT(UPDATE)、DELETE(DELETE)と全てのCRUD操作を許可しています。また、アクセスユーザも「*(全ユーザ)」と設定してます。今回は、このまま「保存」ボタンをクリックします。

image.png

リソース一覧画面に戻り、「sakila_actor」リソースが追加されたことを確認します。

image.png

APIアクセスユーザの作成

「設定 > ユーザー」タブに移動して、ユーザの「追加」ボタンをクリックします。

image.png

「ユーザーを追加」ダイアログが表示されます。ユーザー名を入力(任意)して、ユーザ毎の操作権限「GET(SELECT)、POST(INSERT)、PUT(UPDATE)、DELETE(DELETE)」全てにチェックを入れて「変更を保存」ボタンをクリックします。本画面で、一定時間内のAPIアクセス数制限(RateLimit)および同時接続数の制限を付与することも出来ます。

image.png

ユーザ一覧画面に戻り、ユーザが追加されてAuthトークンが生成されたことを確認します。ユーザ名と本AuthトークンはAPIアクセス時に必要となりますの手元に控えておいてください。

image.png

WebAPIへのアクセス

それでは、作成したWebAPIにアクセスしてみましょう。「API」タブを開くと、APIリファレンスが開きます。
左側にリソースの一覧が表示されますので、上の手順で追加したリソース「/api.rsc/sakila_actor」を選択します。

image.png

右側にHTTPメソッド、および、各種プロパティや追加フォーマットの情報が表示されます。GETメソッドは、Webブラウザからリクエストを発行することができるので、ブラウザの新しいタブ、もしくは、Windowを開いてURLに「 http://localhost:8387/api.rsc/sakila_actor/ 」を入力して開いてみます。ブラウザのレスポンスとして、JSON形式で、MySQL内のactorテーブル内のデータが表示されれば成功です。

image.png

管理コンソールと同一のWebブラウザからアクセスする場合は、ユーザ認証が必要ありませんが、新規ブラウザからだと認証が必要となります。ユーザ名に上記手順で作成したAPIアクセスユーザ名、パスワードにAuthトークンを入力してください。

image.png

MySQLからWebAPIをを作成して、Webブラウザからアクセスすることが出来ました。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
2