From 01b24d27b671d4177c5623880f629fd12d17e6bd Mon Sep 17 00:00:00 2001 From: landaiqing <3517283258@qq.com> Date: Thu, 6 Jun 2024 22:34:36 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=99=BB=E5=BD=95=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.production | 2 +- src/api/user/index.ts | 1 - src/utils/axios/request.ts | 4 ++-- src/views/User/Login/index.tsx | 13 +++++++++++++ src/views/User/Register/index.tsx | 2 +- 5 files changed, 17 insertions(+), 5 deletions(-) diff --git a/.env.production b/.env.production index 59dd031..03d1f42 100644 --- a/.env.production +++ b/.env.production @@ -12,7 +12,7 @@ VITE_API_BASE_URL='http://1.95.0.111:3000' VITE_TITLE_NAME='五味子云存储' # token key -VITE_APP_TOKEN_KEY='token' +VITE_APP_TOKEN_KEY='schisandra' # the upload url VITE_UPLOAD_URL='http://1.95.0.111:3000' diff --git a/src/api/user/index.ts b/src/api/user/index.ts index 826d980..34e405c 100644 --- a/src/api/user/index.ts +++ b/src/api/user/index.ts @@ -60,4 +60,3 @@ export const login = (data: API.LoginRequest) => { data: data, }); }; - diff --git a/src/utils/axios/request.ts b/src/utils/axios/request.ts index fe7a50a..b222a9a 100644 --- a/src/utils/axios/request.ts +++ b/src/utils/axios/request.ts @@ -33,8 +33,8 @@ class Request { // 后端返回字符串表示需要解密操作 // if (typeof response.data == "string") { // response.data = DecryptData(response.data); - // if (!response.data.code && response.data.code !== 200) { - // message.error(response.data.message).then(); + // if (response.status !== 200) { + // message.error(response.statusText).then(); // return Promise.reject(response.data); // } // } diff --git a/src/views/User/Login/index.tsx b/src/views/User/Login/index.tsx index eba27cb..f3e4433 100644 --- a/src/views/User/Login/index.tsx +++ b/src/views/User/Login/index.tsx @@ -33,11 +33,14 @@ import logo from "@/assets/icons/schisandra.svg"; import qrCode from "@/assets/images/login_qrcode-landaiqing.jpg"; import styles from "./index.module.less"; import { observer } from "mobx-react"; +import useStore from "@/utils/store/useStore.tsx"; import FooterComponent from "@/components/Footer"; import RotateCaptcha, { CaptchaInstance, type TicketInfoType } from "react-rotate-captcha"; import { get, load } from "@/api/captcha/index.ts"; import { getSms, login, oauthLogin } from "@/api/user"; import { TinyColor } from "@ctrl/tinycolor"; +import { useNavigate } from "react-router-dom"; +import { setStorage } from "@/utils/localStorage/config.ts"; type LoginType = "account" | "phone"; @@ -53,6 +56,8 @@ export default observer(() => { const smsCaptcha = useRef(null); const loginCaptcha = useRef(null); const captchaRef = useRef(); + const navigate = useNavigate(); + const store = useStore("user"); const colors = ["#40e495", "#30dd8a", "#2bb673"]; const getHoverColors = (colors: string[]) => colors.map((color) => new TinyColor(color).lighten(5).toString()); @@ -94,6 +99,14 @@ export default observer(() => { }; const res: any = await login(data); if (res && res.success && res.code === 0) { + store.setToken(res.data.token); + store.setUserId(res.data.user.id); + setStorage("token", res.data.token, 24 * 60 * 30); + if (store.getToken() !== null || store.getUserId() !== null) { + setTimeout(() => { + navigate("/main"); + }, 3000); + } message.open({ content: "登录成功!", type: "success", diff --git a/src/views/User/Register/index.tsx b/src/views/User/Register/index.tsx index b0843bc..73ea20d 100644 --- a/src/views/User/Register/index.tsx +++ b/src/views/User/Register/index.tsx @@ -309,7 +309,7 @@ export default observer(() => { onClick={async () => { const validateFields = [ "phone", - "userName", + "username", "password", "activeCode", "confirmPassword",