システムデザイン

API Connectでloopbackプロジェクト作成<第2回 プロジェクト作成>

*本記事は旧TechblogからCOLORSに統合した記事です。

はじめに

こんにちは!
エンジニアリングソリューション事業部のS.Rです。
以前、IBM提供のAPI Connectを触る機会があったので、
今回loopbackを利用しながら、環境構築からAPIの実行までを全3回に分けて説明していきたいと思います。

IBM API Connect / loopback利用 ガイド

全体の目次

今回は第2回 プロジェクト作成 / データソースとモデル定義編

API Connectでloopbackプロジェクトを作る<プロジェクト作成 / データソースとモデル定義編>

目次

1. API Connectでloopbackプロジェクトを作る(プロジェクト作成)

※当記事はAPI Connectでloopbackプロジェクトを作る<第1回 環境構築編>からの続きです。
今回は、前回作成したAPI Connectの開発者キットでローカル環境に空のloopbackプロジェクトを作成します。
< ol>

  • コマンドプロンプトを開く。プロジェクトを作成したいディレクトリーを
    カレントディレクトリにする。
  • コマンドプロンプトにapic loopbackと入力する。
  • [code lang=”text”]
    &amp;amp;gt;apic loopback
    [/code]

  • アプリケーションの名前を入力する。サンプルとして今回はmy-appと入力する。
  • [code lang=”text”]
    ? アプリケーションの名前は何ですか? (Projects) my-app
    [/code]

  • 保存場所を変更したい場合は、ディレクトリー名を入力し、Enterキー
    サンプルとして今回は空欄のまま、Enterキーを押す。
  • [code lang=”text”]
    ? プロジェクトを格納するディレクトリーの名前を入力してください(my-app)
    [/code]

  • loopbackのバージョンを選択する。サンプルとして今回は3.xを選択する。
  • [code lang=”text”]
    ? どのバージョンの LoopBack を使用しますか?
    2.x (長期のサポート)
    &amp;amp;gt; 3.x (現在)
    [/code]

  • サーバーの種類を選択する。empty-serverを選択する。
  • [code lang=”text”]
    ? どのようなタイプのアプリケーションにしますか?
    &amp;amp;gt; empty-server (An empty LoopBack API, without any configured models or datasources)
    hello-world (A project containing a controller, including a single vanilla Me
    ssage and a single remote method)
    notes (A project containing a basic working example, including a memory datab
    ase)
    [/code]

  • 以下の画面が表示されれば完了
  • [code lang=”text”]
    my-app-product.yaml 製品定義 [my-app:1.0.0] が作成されました

    次のステップ:

    アプリケーションのディレクトリーを変更
    $ cd D:\MFWork\Projects\my-app

    アプリケーションでモデルを作成
    $ apic create –type model

    API Connect を使用して、API の作成、実行、管理、適用、デプロイを行うことができ
    ます
    $ apic edit

    アプリケーションを実行
    $ apic start
    [/code]

    これでローカル環境に空のプロジェクトが作成されました。
    以降ではデータソースとモデル定義を設定します。

    2. API Connectでloopbackプロジェクトを作る(データソースとモデル定義編)

    ※API Connectでloopbackプロジェクトを作る(プロジェクト作成編)からの続きです。
    前回作成したプロジェクトmy-appにデータソースとモデルを定義し、
    APIを通じてデータにアクセス出来るように設定します。
    今回はデフォルトで定義されているコネクターを使用するため、コネクターの追加は行いません。

    モデル(Model)とは

    データソースから取得したデータとそれらに対する操作メソッドを持ったオブジェクトがモデルです。
    モデルにはいくつかの基本型があり、例として基本型にPersistedModelを指定すれば
    モデルに対する作成・読取・更新・削除の基本的なメソッドと定義済みAPIがデフォルトで生成されます。
    もちろん、モデルに対して独自にユーザー関数を定義することも可能です。

    データソース(Data source)とは

    一般的な使い方として、DBへの接続情報を保持しているのがデータソースです。
    モデルからの情報を元に、コネクターを通じてDBへのアクセスやデータの更新を行います。
    それ以外にもAPIや、SOAPなどのサービスに対しても接続が可能です。
    (その場合はコネクターを追加する必要があります。)

    コネクター(Connector)とは

    DBやAPI、SOAPなどのサービスに対して直接通信を行うのがコネクターの役割です。
    デフォルトではmemory dbしかコネクターが定義されておりません。
    mysqlや、oracleと言った一般的なDBに接続するためには、
    まずコネクターを追加することが必要です。

    詳細はLoopBack の核となる概念を参照して下さい。

    手順

    1. コマンドプロンプト上でカレントディレクトリをmy-appプロジェクト配下に移動する。

    [code lang=”text”]
    >cd my-app
    [/code]

  • apic editコマンドを打ち、ブラウザ画面が立ち上がるまで、待つ。

  • 以降は、項番2で立ち上げたブラウザでの作業となる。 データソースをクリックする。
  • 「追加」をクリックする。
  • データソース名の名前を入力する。
    今回はDataBase_Aと入力し、新規作成をクリック。
  • 以下のような画面に切り替わる。 特に何もせず、全てのデータソースをクリックして前の画面に戻る。
  • 次にモデルを作成する。 モデルをクリックし、モデルタブを開く。次に追加ボタンをクリックする。
  • モデル名を入力する。 今回は、Test_Modelと入力し、新規作成をクリックする。
  • モデル作成の画面になる。ここでは以下のように入力する。
    • データソースを先ほど作成したDataBase_Aにする。
    • 下にスクロールして、プロパティーの欄を表示する。
      プロパティーの文字の横にある+マークをクリックする。
      生成された欄で、必須にチェック、プロパティー名にName、タイプにStringを入力する。
      もう一度、プロパティーの文字の横にある+マークをクリックする。
      生成された欄に、プロパティー名Ageを入力する。
  • 画面右上の保存ボタン(フロッピーのアイコン)をクリックする。
  • 全てのモデルをクリックして前の画面に戻る。
  • APIタブをクリックし、my-appをクリックする。
  • 以下2箇所を変更し、画面右上の保存ボタンをクリックする。
    • スキームをhttpのみに設定
    • ホストをlocalhost:4001に設定
  • これでAPIがローカル環境上に作成されました。

    次回は API Connectでloopbackプロジェクトを作る<第3回 APIの実行とテスト編>となります。
    3回目ではいよいよAPI作成しテストまで行ってみます。