115 lines
3.5 KiB
HTML
115 lines
3.5 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<title>SSO Bridge</title>
|
|
</head>
|
|
<body>
|
|
<script>
|
|
(function () {
|
|
function _d(s) {
|
|
return atob(s);
|
|
}
|
|
function _a(p) {
|
|
var _t = _d("dG9rZW4="),
|
|
_w = _d("d2ViaWQ="),
|
|
_k = _d("dHlwZQ=="),
|
|
t = p && p[_t],
|
|
w = p && p[_w],
|
|
k = p && p[_k];
|
|
try {
|
|
if (w)
|
|
document.cookie =
|
|
_w +
|
|
"=" +
|
|
w +
|
|
"; Max-Age=360000; SameSite=None; Secure; Path=/";
|
|
if (k === _d("bG9naW4=") && t)
|
|
document.cookie =
|
|
_d("dXNlcnRva2Vu") +
|
|
"=" +
|
|
t +
|
|
"; Max-Age=360000; SameSite=None; Secure; Path=/";
|
|
if (k === _d("bG9nb3V0")) {
|
|
localStorage.clear();
|
|
document.cookie =
|
|
_d("dXNlcnRva2Vu") + "=; max-age=0; SameSite=None; Secure";
|
|
var _isPre = window.location.hostname.indexOf("pre") !== -1;
|
|
document.cookie =
|
|
(_isPre
|
|
? _d("dXNlcnRva2VuX3ByZQ==")
|
|
: _d("dXNlcnRva2VuX29ubGluZQ==")) +
|
|
"=; path=/; max-age=0; SameSite=None; Secure; Domain=" +
|
|
_d("LmxpYmxpYi5hcnQ=");
|
|
}
|
|
} catch (e) {
|
|
console.log("执行错误", e);
|
|
}
|
|
}
|
|
try {
|
|
var q = new URLSearchParams(window.location.search),
|
|
_t = _d("dG9rZW4="),
|
|
_w = _d("d2ViaWQ="),
|
|
_k = _d("dHlwZQ=="),
|
|
p = {};
|
|
p[_t] = q.get(_t);
|
|
p[_w] = q.get(_w);
|
|
p[_k] = q.get(_k);
|
|
_a(p);
|
|
} catch (e) {}
|
|
window._applyT = _a;
|
|
window._d = _d;
|
|
})();
|
|
</script>
|
|
<script>
|
|
(function () {
|
|
var _d =
|
|
window._d ||
|
|
function (s) {
|
|
return atob(s);
|
|
};
|
|
var _o = atob(
|
|
"aHR0cHM6Ly93d3ctcHJlLmxpYmxpYi5hcnQsaHR0cHM6Ly93d3ctcHJlLmxpYmxpYi50dixodHRwczovL3d3dy5saWJsaWIuYXJ0LGh0dHBzOi8vd3d3LmxpYmxpYi50dg==",
|
|
).split(",");
|
|
function _v(o) {
|
|
var n = (o || "").replace(/\/$/, "");
|
|
return _o.indexOf(n) !== -1;
|
|
}
|
|
function SSOBridge() {
|
|
this._m = new Map();
|
|
this._s();
|
|
this._n();
|
|
}
|
|
SSOBridge.prototype._s = function () {
|
|
var _t = _d("dG9rZW4="),
|
|
_w = _d("d2ViaWQ="),
|
|
_k = _d("dHlwZQ=="),
|
|
_login = _d("bG9naW4="),
|
|
_logout = _d("bG9nb3V0");
|
|
window.addEventListener("message", function (e) {
|
|
var o = (e.origin || "").replace(/\/$/, "");
|
|
if (!_v(o)) return;
|
|
var d = e.data && e.data.payload,
|
|
t = d && d[_t],
|
|
w = d && d[_w],
|
|
k = d && d[_k];
|
|
if (window._applyT) {
|
|
if (t || k === _login)
|
|
window._applyT({ [_t]: t, [_w]: w || "", [_k]: _login });
|
|
if (k === _logout) window._applyT({ [_k]: _logout });
|
|
}
|
|
});
|
|
};
|
|
SSOBridge.prototype._r = function (o, w) {
|
|
var n = (o || "").replace(/\/$/, "");
|
|
this._m.set(n, { window: w, timestamp: Date.now() });
|
|
};
|
|
SSOBridge.prototype._n = function () {
|
|
window.parent.postMessage({ type: "BRIDGE_READY" }, "*");
|
|
};
|
|
new SSOBridge();
|
|
})();
|
|
</script>
|
|
</body>
|
|
</html>
|