diff --git a/h5/activity/recharge/index.html b/h5/activity/recharge/index.html index 82ac8e9..9c9f912 100644 --- a/h5/activity/recharge/index.html +++ b/h5/activity/recharge/index.html @@ -723,6 +723,27 @@ return ""; } + function splitHeaderPairs(value) { + var result = {}; + String(value || "").split(";").forEach(function (item) { + var index = item.indexOf("="); + if (index > -1) result[item.slice(0, index).trim()] = item.slice(index + 1).trim(); + }); + return result; + } + + function readRequestSysOrigin() { + var packed = splitHeaderPairs(readParam(["req-sys-origin", "Req-Sys-Origin", "reqSysOrigin", "ReqSysOrigin"])); + var origin = trimValue(readParam(["sysOrigin", "origin", "Sys-Origin"]) || packed.origin || "LIKEI").toUpperCase(); + var originChild = trimValue( + readParam(["sysOriginChild", "originChild", "child", "Sys-Origin-Child"]) || + packed.originChild || + packed.child || + origin + ).toUpperCase(); + return { origin: origin, originChild: originChild }; + } + function normalizeBaseURL(base) { var value = trimValue(base) || DEFAULT_API_BASE; return value.endsWith("/") ? value : value + "/"; @@ -949,6 +970,7 @@ async function fetchHomeData() { var authorization = readAuthorization(); if (!authorization) return; + var sysOrigin = readRequestSysOrigin(); try { var response = await fetch(buildURL(HOME_ENDPOINT).toString(), { cache: "no-store", @@ -956,6 +978,11 @@ Accept: "application/json", Authorization: authorization, "req-client": "H5", + "req-lang": readParam(["req-lang", "lang"]) || "en", + "req-version": "V2", + "req-zone": Intl.DateTimeFormat().resolvedOptions().timeZone || "Asia/Shanghai", + "req-app-intel": "version=1.0.0;build=1;model=H5;sysVersion=Web;channel=Web", + "req-sys-origin": "origin=" + sysOrigin.origin + ";originChild=" + sysOrigin.originChild, }, }); var json = await response.json().catch(function () { return {}; });