diff --git a/web/admin-spa/src/views/AccountsView.vue b/web/admin-spa/src/views/AccountsView.vue index 038afa34..8759dada 100644 --- a/web/admin-spa/src/views/AccountsView.vue +++ b/web/admin-spa/src/views/AccountsView.vue @@ -546,7 +546,9 @@ >Droid - OAuth + + {{ getDroidAuthType(account) }} +
{ return 'OAuth' } +// 获取 Droid 账号的认证方式 +const getDroidAuthType = (account) => { + if (!account || typeof account !== 'object') { + return 'OAuth' + } + + const apiKeyModeFlag = + account.isApiKeyMode ?? account.is_api_key_mode ?? account.apiKeyMode ?? account.api_key_mode + + if ( + apiKeyModeFlag === true || + apiKeyModeFlag === 'true' || + apiKeyModeFlag === 1 || + apiKeyModeFlag === '1' + ) { + return 'API Key' + } + + const methodCandidate = + account.authenticationMethod || + account.authMethod || + account.authentication_mode || + account.authenticationMode || + account.authentication_method || + account.auth_type || + account.authType || + account.authentication_type || + account.authenticationType || + account.droidAuthType || + account.droidAuthenticationMethod || + account.method || + account.auth || + '' + + if (typeof methodCandidate === 'string') { + const normalized = methodCandidate.trim().toLowerCase() + const compacted = normalized.replace(/[\s_-]/g, '') + + if (compacted === 'apikey') { + return 'API Key' + } + } + + return 'OAuth' +} + // 获取 Claude 账号类型显示 const getClaudeAccountType = (account) => { // 如果有订阅信息