Procházet zdrojové kódy

添加登录功能

lex před 1 rokem
rodič
revize
56fe632039

+ 1 - 1
src/api/user.ts

@@ -5,7 +5,7 @@ import request from '@/utils/request';
  * @param prams 登录参数
  */
 export const userLogin = (params: any) => {
-  return request.post('/api-oauth/userlogin', {
+  return request.post('/api-auth/usernameLogin', {
     requestType: 'form',
     data: params
   });

+ 9 - 18
src/store/modules/users.ts

@@ -54,25 +54,16 @@ export const useUserStore = defineStore('user-store', {
     async login(userInfo: any) {
       try {
         const { data } = await userLogin(userInfo);
+        const userToken =
+          data.authentication.token_type +
+          ' ' +
+          data.authentication.access_token;
         const ex = 7 * 24 * 60 * 60 * 1000;
-        storage.set(
-          ACCESS_TOKEN,
-          data.token_type + ' ' + data.access_token,
-          ex
-        );
-        storage.get(IM_TOKEN, data.imToken);
-        storage.set(
-          CURRENT_USER,
-          {
-            userId: data.userId
-          },
-          ex
-        );
-        this.setToken(data.token_type + ' ' + data.access_token);
-        this.setImToken(data.imToken);
-        this.setUserInfo({
-          userId: data.userId
-        });
+        storage.set(ACCESS_TOKEN, userToken, ex);
+        // storage.get(IM_TOKEN, data.imToken);
+
+        this.setToken(userToken);
+        // this.setImToken(data.imToken);
         return Promise.resolve();
       } catch (e) {
         return Promise.reject(e);

+ 20 - 14
src/utils/request.ts

@@ -62,26 +62,32 @@ request.interceptors.response.use(
       data.code == 403 ||
       data.code == 5000
     ) {
-      console.log(res, 'res');
       userStore.logout(); // 删除登录 - 清除缓存
       router.replace('/login');
       location.reload();
       return;
     }
-    if (
-      (((data.code < 200 && data.code != 100) ||
-        (data.code >= 300 && data.code != 100)) &&
-        data.code != 0 &&
-        data.code == 5200) ||
-      data.code == 5400 ||
-      (data.code >= 5000 && data.code < 6000) ||
-      data.code == -1
-    ) {
-      const str = res.message || `请求失败code码为${data.code}`;
-      window.$message.error(str);
-      throw new Error(str);
-    }
+    // if (
+    //   (((data.code < 200 && data.code != 100) ||
+    //     (data.code >= 300 && data.code != 100)) &&
+    //     data.code != 0 &&
+    //     data.code == 5200) ||
+    //   data.code == 5400 ||
+    //   (data.code >= 5000 && data.code < 6000) ||
+    //   data.code == -1
+    // ) {
+    //   const str = res.message || `请求失败code码为${data.code}`;
+    //   window.$message.error(str);
+    //   throw new Error(str);
+    // }
 
+    if (data.code !== 200 && data.errCode !== 0) {
+      const msg = data.msg || data.message || '处理失败,请重试';
+      if (!(data.code === 403 || data.code === 401)) {
+        window.$message.error(msg);
+      }
+      throw new Error(msg);
+    }
     return res;
   },
   { global: false }

+ 14 - 10
src/views/login/components/pwdLogin.tsx

@@ -20,10 +20,12 @@ import { useUserStore } from '/src/store/modules/users';
 interface FormState {
   username: string;
   password: string;
-  grant_type: string;
-  loginType: string;
-  client_id: string;
-  client_secret: string;
+  grant_type?: string;
+  loginType?: string;
+  client_id?: string;
+  client_secret?: string;
+  clientId?: string;
+  clientSecret?: string;
 }
 
 export default defineComponent({
@@ -39,8 +41,8 @@ export default defineComponent({
     const showPwd = ref(false);
     const userStore = useUserStore();
     const formInline = reactive({
-      username: 'admin',
-      password: '123456',
+      username: '13810952948',
+      password: 'klx2948',
       isCaptcha: true
     });
 
@@ -54,10 +56,12 @@ export default defineComponent({
           const params: FormState = {
             username,
             password,
-            loginType: 'password',
-            grant_type: 'password',
-            client_id: 'jmedu-backend',
-            client_secret: 'jmedu-backend'
+            // loginType: 'password',
+            // grant_type: 'password',
+            // client_id: 'teacher',
+            // client_secret: 'teacher'
+            clientId: 'teacher',
+            clientSecret: 'teacher'
           };
 
           try {

+ 2 - 2
vite.config.ts

@@ -12,7 +12,7 @@ function resolve(dir: string) {
 }
 // https://vitejs.dev/config/
 // https://github.com/vitejs/vite/issues/1930 .env
-const proxyUrl = 'https://test.lexiaoya.cn';
+const proxyUrl = 'https://dev.colexiu.com/';
 export default defineConfig({
   base: './',
   plugins: [
@@ -40,7 +40,7 @@ export default defineConfig({
     cors: true,
     https: false,
     proxy: {
-      '/api-oauth': {
+      '/api-auth': {
         target: proxyUrl,
         changeOrigin: true
       }