Browse Source

修改单点登录的bug

修改单点登录的bug
dangyunlong 1 week ago
parent
commit
6420d2f7b4

+ 1 - 1
.nuxt/manifest/latest.json

@@ -1 +1 @@
-{"id":"1421dfe8-8024-4786-acd5-37c2aa7e6336","timestamp":1745457795642}
+{"id":"86c323ea-619f-4fef-860e-8eeb59ef53ef","timestamp":1745545056315}

+ 0 - 1
.nuxt/manifest/meta/1421dfe8-8024-4786-acd5-37c2aa7e6336.json

@@ -1 +0,0 @@
-{"id":"1421dfe8-8024-4786-acd5-37c2aa7e6336","timestamp":1745457795642,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}

+ 1 - 0
.nuxt/manifest/meta/86c323ea-619f-4fef-860e-8eeb59ef53ef.json

@@ -0,0 +1 @@
+{"id":"86c323ea-619f-4fef-860e-8eeb59ef53ef","timestamp":1745545056315,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}

+ 1 - 1
.nuxt/tsconfig.json

@@ -102,7 +102,7 @@
         "./imports"
       ],
       "#app-manifest": [
-        "./manifest/meta/1421dfe8-8024-4786-acd5-37c2aa7e6336.json"
+        "./manifest/meta/86c323ea-619f-4fef-860e-8eeb59ef53ef.json"
       ],
       "#components": [
         "./components"

+ 40 - 29
components/home/pageHead.vue

@@ -268,44 +268,55 @@ onMounted(async () => {
     //从客户端获取登录状态
     //从客户端阶段开始 持续查询登录状态
     let getLoginStatus = async () => {
+        //获得token
+        const token = getToken();
         const { $webUrl, $CwebUrl } = useNuxtApp();
-        const queryParams = new URLSearchParams({
-            token: getToken()
-        });
-        let url = `${$webUrl}/api/loginStatus?${queryParams.toString()}`
-
-        const responseStatus = await fetch(url, {
-            method: 'GET',
-            headers: {
-                'Content-Type': 'application/json',
-                'Userurl': $CwebUrl,
-                //'token': getToken(),
-                'Origin': $CwebUrl
-            }
-        });
-        const result = await responseStatus.json();
-        console.log(result)
-        if (result.code == 200) {
-            if (result.data.isLogin == true) {
-                console.log("用户已经登录!");
-                showToken.value = true;
 
+        if(token == undefined){
+            //如果没有获取到token 不访问后端获取在线状态
+            console.log("没有获取到token!无需查询登录状态!")
+
+        }else{
+            //如果获取到了token 访问后端查询状态
+            console.log("已获取到用户token,开始查询登录状态!")
+            const queryParams = new URLSearchParams({
+                token: getToken()
+            });
+            let url = `${$webUrl}/api/loginStatus?${queryParams.toString()}`
+            const responseStatus = await fetch(url, {
+                method: 'GET',
+                headers: {
+                    'Content-Type': 'application/json',
+                    'Userurl': $CwebUrl,
+                    //'token': getToken(),
+                    'Origin': $CwebUrl
+                }
+            });
+            const result = await responseStatus.json();
+            console.log(result)
+            if (result.code == 200) {
+                if (result.data.isLogin == true) {
+                    console.log("用户已经登录!");
+                    showToken.value = true;
+
+                } else {
+                    console.log("用户已退出登录!");
+                    showToken.value = false;
+                    //退出登录
+                    isShow.value = false;
+                    removeToken();
+                    removeTicket();
+                }
             } else {
-                console.log("用户未登录!");
-                showToken.value = false;
+                console.log("用户已退出登录!");
                 //退出登录
                 isShow.value = false;
+                showToken.value = false;
                 removeToken();
                 removeTicket();
             }
-        } else {
-            console.log("用户已退出登录!");
-            //退出登录
-            isShow.value = false;
-            showToken.value = false;
-            removeToken();
-            removeTicket();
         }
+
     }
     getLoginStatus();
     setInterval(getLoginStatus, 3000);