Parcourir la source

请求增加token,login.html的header增加token

root il y a 2 ans
Parent
commit
2bd4e359f3
2 fichiers modifiés avec 29 ajouts et 4 suppressions
  1. 9 1
      login.html
  2. 20 3
      pages/login/login-json.js

+ 9 - 1
login.html

@@ -61,10 +61,18 @@
         if (request.readyState === 4 && request.status === 200) {
           var res = JSON.parse(request.responseText)
           document.querySelector('.code_img').src = "data:image/jpeg;base64," + res.img;
-          console.log(res.token)
+          localStorage.setItem('captchaToken', res.token);
         }
       }
     }
+    // 获取登录的token-登录请求不需要登录token
+    function getToken() {
+      return localStorage.getItem("loginToken");
+    }
+    // 获取验证码的token
+    function getCaptchaCode() {
+       return localStorage.getItem("captchaToken");
+    }
 </script>
 <style>
   .amis-scope .cxd-InputGroup .cxd-TextControl-input:not(:last-child) {

+ 20 - 3
pages/login/login-json.js

@@ -7,16 +7,28 @@ function getLoginJson() {
             "className": "h-full pc:p-9 m:p-4 m:pt-20",
             "api": {
                 "method":"post",
-                "url":"/login",
+                "url":"http://localhost:8081/api/login",
+                "headers": {
+                  "Authorization": 'Bearer ' + getToken()
+                },
+                "requestAdaptor":function(data){
+                  data.data.captchaToken = getCaptchaCode()
+                  
+                  return data;
+                },
                 "adaptor": function (data) {
-                    if (data.status !== 0) {
+                    // token 续期的问题,在app.html中进行续期判断.
+                    if (data.status != "200") {
                         // 登录请求提交后,刷新验证码
                         refresh_code();
                     }
+                    // 存储登录token
+                    let token = data.data.token;
+
                     return data;
                 },
             },
-            "redirect": "/",
+            // "redirect": "http://www.baidu.com",
             "wrapWithPanel": false,
             "body": [
                 {
@@ -89,6 +101,11 @@ function getLoginJson() {
                         }
                     ]
                 },
+                {
+                  "type": "hidden",
+                  "name": "captchaToken",
+                  "value": ""
+                },
                 {
                     "label": "登 录",
                     "type": "action",