海外のSalesforce Developerが公開してくれたQuick Force(Node)を試してみました。これを利用するとSalesforce APIをつかったNodeアプリの開発をローカル環境で行えるようになります。
Salesforce REST APIs – From Zero to Cloud to Local Dev in Minutes
GitHubページはこちら。
使い方
Quick Forceは次の手順で利用できます。
1. Herokuボタンで自分の環境にデプロイ
クリックひとつで自分のHeroku環境に用意できます。
2. アプリを起動
デプロイ後にアプリを起動すると次のようなページが表示されます。
3. 接続アプリケーションの作成
Salesforce組織の外からSalesforce APIを実行できるようにするために、接続アプリケーションの作成を行います。
基本情報に入力する内容は次のような感じです。
API (Oauth 設定の有効)は次のようにします。コールバックURLは用意したHerokuアプリのURLです。
ここからも確認できます。
残りの部分は特に入力する必要はありません。
4. コンシューマ鍵とコンシューマの秘密の確認
接続アプリケーションを作成するとコンシューマ鍵とコンシューマの秘密を取得できます。この情報をつかってHerokuアプリからSalesforceへの認証を行います。
5. コンシューマ鍵とコンシューマの秘密の登録
Herokuアプリに表示されているOpen your app’s settingsリンクをクリックします。
Herokuの設定画面が表示されます。
Reveal Config Varsボタンをクリックすると環境変数が入力できるようになります。ここに先程のコンシューマ鍵とコンシューマの秘密を登録します。
変数名はここで確認できます。
入力後はこのようになります。
6. Salesforceへの認証
設定後、ページを更新すると認証画面が表示されます。
正常に認証されるとSalesforce APIをつかった取引先一覧ページが表示されます。
これでHerokuからSalesforce APIを実行するところまで準備ができました。次はこれをローカルから実行できるように設定します。
7. Herokuアプリのコードをダウンロード
Herokuアプリのコードをダウンロードするために下記リンク先にアクセスします。
するとHerokuの認証ページが表示されます。
認証作業を進めると
Download Heroku Sourceアプリが利用できるようになります。ここで今回のQuick Forceアプリを選択します。
これでコード一式がDownloadできます。
ファイルをDownloadしたら作業ディレクトリに移動しておきます。
8. Gulpファイルの実行
フォルダ内にGulpファイルが用意されています。これをダブルクリックで起動します。
ターミナルが起動していろいろ処理が実行されます。
実行後、Localhost:5000にアクセスします。(下記URLです。)
次の画面が表示されるはずです。
9. ローカル開発用に接続アプリケーションの設定を作成
最初の方でHerokuアプリからSalesforce APIを実行できるようにするため、接続アプリケーションを作成しましたが、今度はローカル環境から実行するために接続アプリケーションを作成します。
※基本設定内容は同じですが、コールバックURLはLocalhost:5000のURLになります。
10. Salesforceへの認証(ローカル環境用)
接続アプリケーションの設定が完了したら認証作業を行います。Herokuのときは設定ページから環境変数を登録しましたが、ローカル環境の場合は、『.env』ファイルを用意してそちらで環境変数を宣言します。
※変数に登録するのは接続アプリケーションの鍵と秘密の値です。
これで認証処理が実行できるようになります。
認証後、ページを更新するとローカル環境でSalesforce APIをつかったアプリが動作するようになります。
以上がQuick Forceを利用するための事前準備の流れです。これをベースに自分のアプリ開発を進めていけば良さそうです。ローカル環境でSalesforce APIが実行できるようになると開発がすごく楽になると思います。