Аутентификация облачного сервиса MegaTracker
В этой статье описано, как указать способ аутентификации, используемый MegaTracker при обращении к облачным сервисам.
Перед началом
Использование аутентификации API Key и API Secret
Этот способ подходит для традиционной проверки пары ключей. Нужно использовать APIKeyAccessData, чтобы создать объект access в MegaTrackerConfigs.
const apiKeyAccess = new mega.APIKeyAccessData(
settings.MegaTrackerAppID, // AppID сервиса локализации Mega
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.
Использование аутентификации API Token
Если сервер может периодически обновлять и выдавать APIToken (каждые несколько минут или часов), этот способ позволяет избежать прямого использования APISecret для подписи запросов локализации и является более безопасным. Способ обновления APIToken см. в разделе Создание и использование Token.
Можно настроить таймер на фронтенде для обновления Token в соответствии со сроком его действия.
Сначала используйте AppID библиотеки карт локализации Mega и адрес сервиса локализации из настроек, чтобы создать TokenAccessData.
Затем используйте созданный TokenAccessData, чтобы создать MegaTrackerConfigs.
Затем используйте MegaTrackerConfigs и licenseKey из конфигурации, чтобы создать SessionConfigs.
В конце используйте метод createSession(sessionConfigs) компонента EasyARMegaComponent, смонтированного в сцене xr-frame, чтобы создать session.
Когда Token истекает, необходимо вызвать updateToken(apiToken) для обновления. Иначе сервис Mega будет недоступен, а статус в результатах локализации всегда будет ApiTokenExpired.
const tokenAccess = new mega.TokenAccessData(
settings.MegaTrackerAppID, // AppID сервиса локализации Mega
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 для создания session с аутентификацией
APIToken.