Axios と CData Connect AI で Trello に接続した Web アプリを構築
Axios は開発者が Web ブラウザや Node.js からサーバーに HTTP リクエストを送信できる JavaScript ライブラリです。CData Connect AI と組み合わせることで、Web アプリからライブTrello のデータにアクセスできます。この記事では、Trello に接続し、Axios でライブTrello のデータにアクセスできる Web アプリを構築する方法を説明します。
Axios から Trello に接続
Axios で Trello を操作するには、Connect AI から Trello に接続し、ユーザーにアクセス権を提供し、Trello のデータ 用のワークスペースを作成する必要があります。
Connect AI から Trello に接続
CData Connect AI はシンプルなポイントアンドクリックインターフェースでデータソースに接続できます。
- Connect AI にログインして「Sources」をクリック、次に「 Add Connection」をクリック
- 接続を追加パネルから「Trello」を選択
-
Trello に接続するために必要な認証プロパティを入力します。
Trello は、トークンベース認証を使用して、サードパーティアプリケーションにAPI へのアクセスを許可します。ユーザーがアプリケーションにデータへのアクセスを許可すると、アプリケーションにはTrello のAPI へのリクエストに使用できるトークンが付与されます。 Trello のAPI には2通りの方法でアクセスできます。1つ目はTrello 独自の認可ルートで、2つ目はOAuth1.0 を使用する方法です。
- 認可ルート: 登録の時点で、Trello はAPI キーとトークンをアカウントに割り当てます。認可ルート経由で接続する方法については、ヘルプドキュメントの「認可ルートの使用」を参照してください。
- OAuth ルート: 認可の使用と同様に、OAuth は、アカウントの作成時にApplication Id とSecret を作成します。接続方法については、ヘルプドキュメントの「OAuth 認証の使用」を参照してください。
- 「Save & Test」をクリック
-
Trello 接続の追加ページで「Permissions」タブに移動し、ユーザーベースのアクセス許可を設定します。
Personal Access Token の作成
REST API、OData API、または Virtual SQL Server を介して Connect AI に接続する場合、Personal Access Token(PAT)を使用して Connect AI への接続を認証します。アクセスの粒度を維持するために、サービスごとに個別の PAT を作成することをお勧めします。
- Connect AI アプリの右上にある歯車アイコン()をクリックして設定ページを開きます。
- 設定ページで「Access Tokens」セクションに移動し、「 Create PAT」をクリックします。
-
PAT に名前を付けて「Create」をクリックします。
- Personal Access Token は作成時にのみ表示されるため、必ずコピーして安全な場所に保存してください。
Axios 用に Trello エンドポイントを設定
Trello に接続したら、目的のテーブル用のワークスペースを作成します。
-
「Workspaces」ページに移動し、「 Add」をクリックして新しいワークスペースを作成します(または既存のワークスペースを選択)。
- 「 Add」をクリックしてワークスペースに新しいアセットを追加します。
-
Trello 接続(例: Trello1)を選択して「Next」をクリックします。
-
操作するテーブルを選択して「Confirm」をクリックします。
- ワークスペースの OData サービス URL をメモしておきます(例: https://cloud.cdata.com/api/odata/{workspace_name})。
接続、PAT、ワークスペースが設定できたので、Axios からTrello のデータに接続する準備が整いました。
Axios ワークフローで Trello のデータに接続
OData プロトコルを使用して Axios から CData Connect AI への接続を確立するには、以下のステップに従います。
- Web アプリ用のプロジェクトディレクトリを作成します(例: ~/connect_cloud/)
- ターミナルを開き、プロジェクトディレクトリに移動して以下のコマンドで node プロジェクトを初期化します:
npm init -y
- 以下のコマンドでプロジェクトに Axios 依存関係をインストールします:
npm install axios
プロジェクトディレクトリに以下のコードを含む server.js ファイルを作成します。CData Connect AI のユーザー名(例: [email protected])と PAT(前提条件で作成した PAT)を指定します。また、SELECT * FROM Trello1.SCHEMA.Boards のようなデータクエリも指定する必要があります。
server.js コード
const axios = require('axios') const user = '[email protected]' const pat = '***********************************'; //API エンドポイント const url = 'https://cloud.cdata.com/api/odata/{workspace_name}'; //POST リクエストで送信するデータ const data = { "query":"SELECT * FROM {workspace_name}.SCHEMA.Boards" }; axios.post(url, data, { auth: { username: user, password: pat } }) .then(response => { const rows = response.data.results[0].rows; const schema = response.data.results[0].schema; //カラム名の配列を作成 const columnNames = schema.map(col => col.columnName); //各行をループして、カラム名と値をログ出力 rows.forEach(row => { const rowObject = {}; row.forEach((value, index) => { const columnName = columnNames[index]; rowObject[columnName] = value; }); console.log(rowObject); }) }) .catch(error => { console.error('Error:', error); });- ターミナルで以下のコマンドを実行してサーバーを起動します:
node server.js
クエリ結果が表示されます:{ ID: 1, VALUE: -2 } { ID: 2, VALUE: 1 } { ID: 11, VALUE: null } { ID: 3, VALUE: 2 } { ID: 4, VALUE: 5 } ...
クラウドアプリケーションから Trello のデータへの簡易アクセス
これで、Axios からライブTrello のデータへの直接接続が確立されました。Axios のようなクラウドアプリケーションから 100 以上の SaaS、ビッグデータ、NoSQL ソースへの簡易アクセスについての詳細は、Connect AI ページを参照してください。