JSWで作るGCPの管理アプリ

2019-01-20 09:12:38

 現在JSWでGoogleCloudPlatform用の管理アプリケーションを作っています。このあたりのAPIを使う人が少ないせいか、npmに@typesが登録されていませんでした。


 GoogleのOAuth2を使う場合、Googleが提供しているgapi.auth2のライブラリを使うと画面遷移せずにユーザ認証が可能となります。逆にこれを使わないと、いったん認証ページに飛ばしてリダイレクトしなければなりません。ということで私のシステムでは、これを使用しないという選択肢はありません。

 ただしgapiの認証機能は、発行されたトークンをグローバルに使い回します。一つのページ内で複数アカウントを同時に使うことが想定されていません。gapi.client系を使ったAPIの呼び出しは全て同じトークンになります。これではいずれ困ることが想定されるので、gapi.auth2以外のAPIアクセスは、ajax部分を自分で記述して使うことにしました。

 どちらにしても高速化のためにAPIアクセスを並列化する場合、batchAPIが必要となり、そちらは便利な定義済みの機能は使えません。