Table of Contents

Megatracker クラウドサービス認証

この記事では、Megatracker がクラウドサービスを使用する際の認証方法の指定について説明します。

開始する前に

Use api key and api secret authentication

この方式は従来のキーペア認証に適しています。APIKeyAccessData を使用して MegaTrackerConfigs 内の access オブジェクトを構築する必要があります。

const apiKeyAccess = new mega.APIKeyAccessData(
    settings.MegaTrackerAppID, // Mega ローカライゼーションサービス AppID
    settings.MegaTrackerServerAddress, // Mega ローカライゼーションサービスアドレス
    settings.EasyARAPIKey, // APIKey 文字列
    settings.EasyARAPISecret // APISecret 文字列
);
const megaTrackerConfigs: easyar.MegaTrackerConfigs = {
    access: apiKeyAccess
};
const sessionConfigs: easyar.SessionConfigs = {
    megaTrackerConfigs: megaTrackerConfigs,
    licenseKey: settings.EasyARLicenseKey
};
session = megaComponent.createSession(sessionConfigs);

この例では、まず設定のクラウドローカライゼーションライブラリ appId、クラウドサービス serverAddress、クラウドサービス apiKey および apiSecret を使用して APIKeyAccessData を作成しています。

次に、作成した APIKeyAccessData を使用して MegaTrackerConfigs を作成しています。これは API Key と API Secret 認証を使用することを意味します。

Use api token authentication

サーバーで定期的(数分ごとまたは数時間ごと)に APIToken を更新および配布できる場合、この方式を使用すると、APISecret を直接使用してローカライゼーションリクエストに署名する必要がなくなり、より高いセキュリティを実現できます。APIToken の更新方法については、Tokenの作成と使用方法 を参照してください。

トークンの有効期間に基づいて、フロントエンドにタイマーを設定して更新することができます。

まず、設定の Mega ローカライゼーションライブラリ AppID とローカライゼーションサービスアドレスを使用して TokenAccessData を作成します。

次に、作成した TokenAccessData を使用して MegaTrackerConfigs を作成します。

次に、MegaTrackerConfigs と設定の licenseKey を使用して SessionConfigs を作成します。

最後に、xr-frame シーンにアタッチされた EasyARMegaComponentcreateSession(sessionConfigs) メソッドを使用してセッションを作成します。

トークンが期限切れになった場合、updateToken(apiToken) を呼び出して更新する必要があります。そうしないと、Mega サービスが利用不可になり、ローカライゼーション結果のステータスが常に ApiTokenExpired になります。

const tokenAccess = new mega.TokenAccessData(
    settings.MegaTrackerAppID, // Mega ローカライゼーションサービス AppID
    settings.MegaTrackerServerAddress, // Mega ローカライゼーションサービスアドレス
    "your_api_token" // APIToken 文字列
);
const megaTrackerConfigs: easyar.MegaTrackerConfigs = {
    access: tokenAccess
};
const sessionConfigs: easyar.SessionConfigs = {
    megaTrackerConfigs: megaTrackerConfigs,
    licenseKey: settings.EasyARLicenseKey
};
session = megaComponent.createSession(sessionConfigs);

この例は、TokenAccessData を使用して MegaTrackerConfigs を作成し、この MegaTrackerConfigs を使用してセッションを作成し、APIToken 認証を使用する方法を示しています。