一 . 此方法使用的前提條件
-
各系統間域名必須是相同的 .
例如 http:// vue.deppontest.com:9000/#/ 自動登錄到 http:// angular.deppontest.com:8080/#/
-
需要登錄的系統是以 cookie 與後端校驗登錄
二 . 若滿足以上條件可複製此代碼使用
// 查看是否登錄過有cookie
const tokeen = getCookie("Admin-Token");
if (tokeen !== null) {
// 如果有可直接自動登錄
window.open(
`http://XXX.deppontest.com:XXXX/#/corelinappname=${
this.param.appName
}`,"_blank"
);
} else {
// 若沒有先獲取cookie寫入後自動登錄
// 需要登錄系統的用戶名 和 密碼
let parmars = { username: " ", password: " " };
const url = "http:// XXX .deppontest.com:XXXX/login/";
this.$http.post(url, parmars).then(res => {
let token = "若登錄系統token固定可固定寫死";
if (res.data && res.data.token) {
token = res.data.token;
}
// 修改cookie 填充token 可以訪問以.deppontest.com 域名的網站
document.cookie = `Admin-Token=${token};path=/;domain=.deppontest.com;expires=`;
//鏈接到需要登錄的系統
window.open(
`http://XXX.deppontest.com:XXXX/#/corelink?appname=${
this.param.appName
}`,"_blank"
);
});
}
大功告成 , 親測有效