本文主要是介绍统一4A门户跳转到另外系统免登录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
记录一下统一4A门户跳转到另外系统免登录
本系统创建sso页面
<template><div class="yu-loading" v-show="isLoading">...</div>
</template>
<script>export default {name: 'YuLogin',created: function () {// 1 在统一平台点击某按钮跳转打开本系统sso页面// 2 sso页面添加到白名单中(路由守卫中到此页面不跳转别的页面)// 3 sso页面打开网页(相当于给4A系统下指令让其带着ticket来到本系统调用本系统接口进行校验)// 4 校验通过后在服务器上打开html文件window.location.href=`http://**.*.***.***:8888/portalweb/sso.login?appId=portal-ui&sessionId=portal-session-id&service=${process.env.VUE_APP_BASE_SSO}/yusp-uaa/api/check/ticket`},destroyed: function () {},methods: {}
};
</script><style lang="scss">
</style>
<!DOCTYPE html>
<html><head><meta charset="UTF-8" /><title>登录中...</title><meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="renderer" content="webkit" /><linkrel="shortcut icon"href="../../../themes/common/images/favicon.ico"type="image/x-icon"/></head><body><div id="errorMsgDiv"></div></body>
</html>
<script type="text/javascript">// 4 校验通过后在服务器上打开html文件参数拼接到?后// 5 获取tokengetSearchString();function getSearchString() {var str = window.location.search;str = str.substring(1, str.length);var arr = str.split("&");var obj = new Object();for (var i = 0; i < arr.length; i++) {var tmp_arr = arr[i].split("=");obj[tmp_arr[0]] = decodeURIComponent(tmp_arr[1]);}obj["buildTime"] = new Date().getTime();if (!!window.ActiveXObject || "ActiveXObject" in window) {setTimeout(function() {urlJump(obj);}, 900);} else {urlJump(obj);} }// 6 获取的token放入sessionStorage中function urlJump(obj) {window.sessionStorage.setItem("UFP-Authorization",`03${JSON.stringify(obj)}`);// 7 打开本系统首页window.location = "/#/detail/common/dashboard/PLTFRM"; }
</script>
这篇关于统一4A门户跳转到另外系统免登录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!