fix h5 backend app code mapping

This commit is contained in:
zhx 2026-06-25 14:09:13 +08:00
parent 79366434f1
commit ffdd2bad74

View File

@ -113,9 +113,7 @@ var default_api = 'https://api.global-interaction.com/';
);
if (payloadUserID) return payloadUserID;
var textUserID = firstLongNumericID(
decodeBase64URLText(parts[i])
);
var textUserID = firstLongNumericID(decodeBase64URLText(parts[i]));
if (textUserID) return textUserID;
}
return '';
@ -254,6 +252,16 @@ var default_api = 'https://api.global-interaction.com/';
return appCode === 'yumi' || appCode === 'aslan' ? appCode : 'lalu';
}
function backendAppCode(appCode) {
appCode = String(appCode || 'lalu')
.trim()
.toLowerCase();
// H5 的 app_code 同时承载历史品牌主题和后端租户yumi/aslan 只用于页面主题,后端当前只有 lalu/huwaa 租户。
// 请求头必须收敛到后端已注册的 app_code否则 gateway 会在 AppRegistryService.ResolveApp 阶段直接返回 INVALID_ARGUMENT。
if (appCode === 'yumi' || appCode === 'aslan') return 'lalu';
return appCode || 'lalu';
}
function applyAppTheme(appCode) {
if (!window.document || !window.document.documentElement) return;
window.document.documentElement.setAttribute(
@ -446,9 +454,10 @@ var default_api = 'https://api.global-interaction.com/';
);
var token = getAccessToken();
var appCode = getAppCode();
var requestAppCode = backendAppCode(appCode);
var url = buildURL(path, opts.query);
if (token) headers.Authorization = 'Bearer ' + token;
if (appCode) headers['X-App-Code'] = appCode;
if (requestAppCode) headers['X-App-Code'] = requestAppCode;
if (!shouldPersist() && isSameOriginURL(url))
headers['Cache-Control'] = 'no-cache';