CData Connect Server - データベースからREST APIを作成&公開する方法

by 桑島義行 | 2023年02月02日

はじめに

これまでCData Software ではポイント&クリックだけでデータベースからREST APIを生成する製品としてCData API Serverをご提供してきました。本製品の後継製品としてCData Connect Serverの提供を始めました。本CData Connect Server製品は、従来のCData API Serverが持つノーコードでREST APIを作成・公開する機能を包括するとともに以下の特徴を持った製品となります。

  • 250種類を超えるデータソースに対応
  • 事前検証済みのクライアント(BIやNoCode/LowCodeツールなど)に対応

本記事では、CData Connect Serverを利用したノーコードでREST APIを作成・公開する機能をご紹介します。

前提

本手順では以下のソフトウェアを利用しています。

  • Java 11以上
  • Postman
  • CData Connect Server V22(8340)
  • Windows 10 Pro

手順

製品のダウンロード、および、初期セットアップ

CData Connect Server製品のシステム要件はこちらよりご参照ください。こちらのページよりWindows版とCross-platform版どちらかを選択してセットアップファイルをダウンロードします。本手順ではWindows版を利用します。ダウンロードしたセットアップファイル(Windows版の場合はCDataConnect.exe)を実行するとインストーラが起動するので内容を確認してウィザードに従って進めます。

JAVA_HOMEの指定が必要です。

インストーラが終了するとデフォルトでブラウザが起動する設定となっています。起動しない場合はインストールパス(デフォルトでは「C:\Program Files\CData\CData Connect」)配下の「restart.bat」を実行することで起動することも可能です。

localhost:8080で管理コンソールのログイン画面にアクセスします。初回は「Create User」画面が表示されるのでUserとPasswordを設定して「+Create User」ボタンをクリックします。

作成したUserで「Sign in」します。

Licesingの画面に遷移します。本画面でライセンスを既にお持ちの方は「Install New License」、評価版でご利用の方は「Activate 30~Days Trial」ボタンをクリックして登録ください。

評価版の場合はNameとEmailが必要となります。「Terms and Conditons」を確認したらチェックをオンにして「Activate」します。なお、オンラインでCDataのライセンスサーバーに接続できないようなネットワーク環境の場合はオフラインでのアクティベーション方法がございますのでその場合はサポートデスクまでお問合せください。

Licensing Informationから登録されているライセンス情報が確認できます。

データソースの設定

CONNECTIONSタブを開き「+Add Connection」ボタンをクリックします。

+Add Connection画面が開きます。既に追加されているConnectionは「show installed sources」を切り替えることで参照可能です。

今回は、MySQLへの接続を追加するのでSearchボックスに「MySQL」と入力します。

MySQL コネクタを追加します。「Download」を選択して「Download and Install」をクリックします。

ダウンロードが完了するとCData Connect Serverが再起動が求められます。なお、ネットワーク環境によってはダウンロードが失敗する場合は別途コネクタを提供いたしますのでその場合はサポートデスクまでお問合せください。

再起動するとLogin画面に戻るのでログインして「CONNECTION」メニュー > 「+ Add Connection」をクリックして「Show installed sources」をオンにしてみます。MySQLが追加されていることを確認します。

Basic SettingsタブでMySQLへの接続情報をセットします。

  • Server : MySQLマシンのIPアドレス、もしくは、DNS名
  • Port : MySQLへの接続ポート
  • User : MySQLへのログインユーザ
  • Password : MySQLへのログインユーザのパスワード
  • Database : 接続するMySQLのデータベース(スキーマ)

設定したら「Test Connection」をクリックして接続に成功したら「Save Changes」ボタンをクリックしてください。

「CONNECTIONS」メニューもしくは「←」ボタンをクリックしてConfigured Connections画面を開いて、MySQLへのコネクションが作成されていることを確認します。

APIエンドポイントの作成

「ODATA」メニューを開きます。Tablesタブが開いていることを確認して「+Add Tables」ボタンをクリックします。

Connectionダイアログで作成したMySQLのコネクションを選択して次に進みます。

MySQLデータベース内のテーブルがリストで表示されるのでAPIとして公開したいテーブルを選択します。今回は、MySQLサンプルデータベースsakilaのactor, city, countryという3つのテーブルを選択しました。

選択したテーブルが追加されたことを確認します。

追加したテーブルをクリックするとテーブルに対するCRUD操作、および、テーブルのフィールドを選択することが可能です。テーブル毎に参照のみのAPIにして公開する、など、機微情報を含むフィールドは公開しないなど設定することが可能です。

Userの作成

次にAPIとしてアクセス可能なユーザを作成します。「USERS」メニューを開いて「+Add User」ボタンをクリックします。

Add Userダイアログが表示されるのでUser、および、Passwordをセットします。Authtokenは本画面で初回のみ表示されるので忘れないように控えておいてください。

追加したユーザをクリックします。

Edit User画面で作成したMySQLコネクションに対する権限を付与します。本例では、SELECT、INSERT、UPDATE、DELETEを許可しました。設定したらSave Changesボタンで保存してください。

APIドキュメントの参照

それでは作成したAPIのドキュメントを参照してみましょう。「ODATA」メニュー > 「API」タブを開きます。

左側のメニューバーからTableを選択してクリックします。本テーブルのデータにAPIからアクセスする場合のリクエスト方法やレスポンスに関する情報を確認することができます。

画面上部のリンク「例:odata.rsc/MySQL1_actor/」をクリックすると本APIをGETメソッドで実行した結果をブラウザで確認することができます。

PostmanからのAPIリクエスト確認

Postmanから以下の設定をしてAPIにアクセスしてみます。

  • メソッド:GET
  • URL : APIドキュメントで表示されているテーブル毎のURL(例 http://localhost:8080/odata.rsc/MySQL1_actor/)
  • Autorization Type : Basic Auth
  • Username : 「USERS」メニューで作成したUser
  • Password : 「USERS」メニューで作成したUserのAuthtoken

リクエストをSendするとMySQLのテーブル内のデータがJSONデータとして表示されれば成功です。

なお、認証情報については、Headersに以下のKEYとVALUEをセットすることでも利用可能です。

  • KEY : x-cdata-authtoken
  • VALUE : 「USERS」メニューで作成したUserのAuthtoken

まとめ

本記事では、CData Connect Serverを利用したノーコードでREST APIを作成・公開する機能をご紹介しました。
CData Connect Serverはこちらのページからダウンロード可能です。30日間ご利用いただける無償評価ライセンスがございますので是非実機にてお試しください。

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。