Commit 7093ed399737ef6484a62c50ae89f19976a8aef0
1 parent
3cd256f7
【修复】钉钉登录时,重定向后 type 丢失导致报错的问题
Showing
2 changed files
with
11 additions
and
11 deletions
yudao-ui-admin/src/views/login.vue
| ... | ... | @@ -258,7 +258,8 @@ export default { |
| 258 | 258 | // 设置登录中 |
| 259 | 259 | this.loading = true; |
| 260 | 260 | // 计算 redirectUri |
| 261 | - const redirectUri = location.origin + '/social-login?type=' + socialTypeEnum.type + '&redirect=' + (this.redirect || "/"); // 重定向不能丢 | |
| 261 | + const redirectUri = location.origin + '/social-login?' | |
| 262 | + + encodeURIComponent('type=' + socialTypeEnum.type + '&redirect=' + (this.redirect || "/")); // 重定向不能丢 | |
| 262 | 263 | // const redirectUri = 'http://127.0.0.1:48080/api/gitee/callback'; |
| 263 | 264 | // const redirectUri = 'http://127.0.0.1:48080/api/dingtalk/callback'; |
| 264 | 265 | // 进行跳转 | ... | ... |
yudao-ui-admin/src/views/socialLogin.vue
| ... | ... | @@ -104,24 +104,19 @@ export default { |
| 104 | 104 | state: undefined, |
| 105 | 105 | }; |
| 106 | 106 | }, |
| 107 | - // watch: { | |
| 108 | - // $route: { | |
| 109 | - // handler: function(route) { | |
| 110 | - // this.redirect = route.query && route.query.redirect; | |
| 111 | - // }, | |
| 112 | - // immediate: true | |
| 113 | - // } | |
| 114 | - // }, | |
| 115 | 107 | created() { |
| 116 | 108 | this.getCookie(); |
| 117 | 109 | // 验证码开关 |
| 118 | 110 | this.captchaEnable = getCaptchaEnable(); |
| 119 | 111 | // 重定向地址 |
| 120 | - this.redirect = this.$route.query.redirect ? decodeURIComponent(this.$route.query.redirect) : undefined; | |
| 112 | + this.redirect = this.getUrlValue('redirect'); | |
| 121 | 113 | // 社交登录相关 |
| 122 | - this.type = this.$route.query.type; | |
| 114 | + this.type = this.getUrlValue('type'); | |
| 123 | 115 | this.code = this.$route.query.code; |
| 124 | 116 | this.state = this.$route.query.state; |
| 117 | + | |
| 118 | + // 尝试登录一下 | |
| 119 | + this.loading = true; | |
| 125 | 120 | this.$store.dispatch("SocialLogin", { |
| 126 | 121 | code: this.code, |
| 127 | 122 | state: this.state, |
| ... | ... | @@ -183,6 +178,10 @@ export default { |
| 183 | 178 | }); |
| 184 | 179 | } |
| 185 | 180 | }); |
| 181 | + }, | |
| 182 | + getUrlValue(key) { | |
| 183 | + const url = new URL(decodeURIComponent(location.href)); | |
| 184 | + return url.searchParams.get(key); | |
| 186 | 185 | } |
| 187 | 186 | } |
| 188 | 187 | }; | ... | ... |