ノーコードツールAdalo でEnterpriseDB 連携アプリを作成
CData Connect Server を使ってEnterpriseDB データの仮想OData API エンドポイントを作成して、Adalo からEnterpriseDB データを使ったアプリを作成する方法。
杉本和也
リードエンジニア
最終更新日:2021-11-15
こんにちは!リードエンジニアの杉本です。
Adalo は ノーコードでスマホやWebベースのアプリを構築できるクラウドサービスです。この記事では、CData Connect Server を経由して Adalo からEnterpriseDB に連携するアプリを作成する方法を説明します。
CData Connect Server は、EnterpriseDB データのクラウド to クラウドの仮想OData インターフェースを提供し、Adalo からリアルタイムにEnterpriseDB データへ連携することができます。
EnterpriseDB の仮想OData API エンドポイントを作成
まずCData Connect Server でデータソースへの接続およびOData API エンドポイント作成を行います。
- CData Connect Server にログインして、Databases をクリックします。
- 利用できるデータソースアイコンから"EnterpriseDB" を選択します。
-
EnterpriseDB に接続するために必要なプロパティを入力します。
データに接続するには、以下の接続プロパティが必要です。
- Server: EnterpriseDB データベースをホスティングしているサーバーのホスト名またはIP アドレス。
- Port: EnterpriseDB データベースをホスティングしているサーバーのポート。
オプションで、以下を設定することもできます。
- Database: EnterpriseDB サーバーに接続する場合のデフォルトのデータベース。設定されていない場合は、ユーザーのデフォルトデータベースが使用されます。
Basic 認証による接続
Basic 認証を使って認証するには、以下を設定します。
- User:EnterpriseDB サーバーに認証する際に使われるユーザー。
- Password:EnterpriseDB サーバーに認証する際に使われるパスワード。
SSL 認証による接続
SSL 認証を利用して、セキュアなセッションを介してEnterpriseDB データに接続できます。以下の接続プロパティを設定して、データに接続します。
- SSLClientCert:クライアント証明書のための証明書ストア名に設定します。クライアントとサーバーの両方のマシンでトラストストアとキーストアが保持される2-way SSL の場合に使用されます。
- SSLClientCertPassword:クライアント証明書ストアがパスワードで保護されている場合、この値をストアのパスワードに設定します。
- SSLClientCertSubject:TLS/SSL クライアント証明書のSubject。ストア内の証明書を検索するために使用されます。
- SSLClientCertType:クライアントストアの証明書タイプ。
- SSLServerCert:サーバーが受け入れ可能な証明書。
-
Test Database をクリックします。
-
Permission -> Add をクリックして、新しいユーザーを追加し、適切な権限を指定します。
-
API タブをクリックして OData API エンドポイントが生成されていることを確認します。
Adalo でアプリを作成する
CData Connect Server 側の準備が完了したら、早速Adalo側でアプリ開発を開始します。
- 「CREATE NEW APP」をクリックし
- 今回は「Desktop Web App」を作成します。
- templateを最初に選ぶことができますが、今回は検証用なので何も無い「Blank」で作成しました。
- 最後にアプリ名とカラーリング設定を選んで、アプリの準備は完了です。
External Collections の登録
続いてCData Connect Server への接続をAdalo に追加します。Adalo では「Collection」という形でデータ構造を持ち、アプリのデータを管理することができるのですが、この「Collection」を外部のAPIとシームレスに連携した形で利用することができる「External Collections with APIs」という機能があります。この機能を用いてCData Connect Server に接続します。
- アプリを作成したら、まず Adalo アプリ内でデータを扱うための定義である「Collection」を登録します。Collection は Adalo 内部の独自DBのような「Database Collections」と、外部のAPIに対してシームレスにアクセスすることが可能な「External Collections」があります。今回は外部のAPIに対してアクセスを行うので「External Collections」で登録します。
- External Collections の登録画面では最初にコレクション名とAPI のベースとなるURLエンドポイントを指定します。任意のCollection 名とAPI Base URLに先程CData Connect Server で登録したEnterpriseDB の対象リソースに接続できるODataのエンドポイントを指定します。併せて認証情報として Header に「x-cdata-authtoken」の名前でCData Connect Server ユーザー登録時に生成されているTokenを指定します。
- 続いてAdaloから実行されるそれぞれのリクエストの関連付けを行います。通常のAPIであれば様々なチューニングが必要となる箇所ですが、EnterpriseDB ではほぼデフォルトの設定のままで進められます。一点だけ設定が必要な箇所として、EnterpriseDB からのレスポンスをレコード単位で識別するために「Get All」の設定にある「Results Key」に「value」を登録しておくことが挙げられます。これを設定したら「Next」をクリックしましょう。
- 最後にAPIの「RUN TEST」を行います。
- 「RUN TEST」をクリック後、最終的に以下のようにメッセージとレスポンスが表示されれば、External Collectionsの作成は完了です。
一覧画面の作成
それでは作成した External Collections を使ってアプリを作っていきましょう。
- まず一覧画面を表示するためにAdalo の画面右上の「+」ボタンをクリックして、「Simple List」をドラッグアンドドロップで画面に配置します。
- 以下のように配置できたら「What is this a list of?」で先程作成したExternal Collectionsの定義を紐付けます。
- 併せて「Title」と「Subtile」を取得するデータ項目に紐付けましょう。
- プレビューを実行し一覧画面に移動してみると、以下のようにEnterpriseDB のデータを取得できていました。
このように、CData Connect Serverを経由することで、API 側の複雑な仕様を意識せずにAPI 連携をしたアプリをAdalo で開発できます。他にも多くのデータソースに対応するCData Connect Server の詳細をこちらからご覧ください。