fix: login 410 error tip

This commit is contained in:
Tristan Yang
2022-06-23 21:58:26 +08:00
parent 0310d764ac
commit e53ebd63a7
5 changed files with 48 additions and 27 deletions
+2 -2
View File
@@ -5,9 +5,9 @@ export const ContentTypes = {
text: "text/plain",
markdown: "text/markdown",
file: "rustchat/file",
archive: "rustchat/archive",
formData: "multipart/form-data",
json: "application/json",
archive: "rustchat/archive"
json: "application/json"
};
export const firebaseConfig = {
apiKey: "AIzaSyDyJ6B1Ouenoha_gdGkBwIkBNStlwhlbO0",
+13 -16
View File
@@ -77,6 +77,18 @@ const baseQueryWithTokenCheck = async (args, api, extraOptions) => {
toast.error(`${api.endpoint}: Failed to fetch`);
}
break;
case 401:
{
if (api.endpoint !== "login") {
api.dispatch(resetAuthData());
location.href = "/#/login";
toast.error("API Not Authenticated");
}
}
break;
case 403:
toast.error("Request Not Allowed");
break;
case 404:
{
toast.error("Request Not Found");
@@ -87,22 +99,7 @@ const baseQueryWithTokenCheck = async (args, api, extraOptions) => {
toast.error(result.error.data || "Server Error");
}
break;
case 401:
{
if (api.endpoint !== "login") {
api.dispatch(resetAuthData());
location.href = "/#/login";
toast.error("API Not Authenticated");
}
// toast.error("token expired, please login again");
// } else {
// return;
// }
}
break;
case 403:
toast.error("Request Not Allowed");
break;
default:
break;
}
+16 -1
View File
@@ -31,7 +31,7 @@ type Props = {
export default function GithubLoginButton({ type = "login", client_id }: Props) {
//拿本地存的magic token
const magic_token = localStorage.getItem(KEY_LOCAL_MAGIC_TOKEN);
const [login, { isLoading, isSuccess }] = useLoginMutation();
const [login, { isLoading, isSuccess, error }] = useLoginMutation();
useEffect(() => {
const query = new URLSearchParams(location.search);
const isGithub = query.get("oauth") === "github";
@@ -50,6 +50,21 @@ export default function GithubLoginButton({ type = "login", client_id }: Props)
// navigateTo("/");
}
}, [isSuccess]);
useEffect(() => {
if (error) {
switch (error.status) {
case 410:
toast.error(
"No associated account found, please contact admin for an invitation link to join."
);
break;
default:
toast.error("Something Error");
break;
}
return;
}
}, [error]);
const handleGithubLogin = () => {
location.href = `http://github.com/login/oauth/authorize?client_id=${client_id}`;
// console.log("github login");
+16 -1
View File
@@ -29,7 +29,7 @@ interface Props {
}
const GoogleLoginButton: FC<Props> = ({ type = "login", clientId }) => {
const [login, { isSuccess, isLoading }] = useLoginMutation();
const [login, { isSuccess, isLoading, error }] = useLoginMutation();
//拿本地存的magic token
const magic_token = localStorage.getItem(KEY_LOCAL_MAGIC_TOKEN);
const { signIn, loaded } = useGoogleLogin({
@@ -56,6 +56,21 @@ const GoogleLoginButton: FC<Props> = ({ type = "login", clientId }) => {
// navigateTo("/");
}
}, [isSuccess]);
useEffect(() => {
if (error) {
switch (error.status) {
case 410:
toast.error(
"No associated account found, please contact admin for an invitation link to join."
);
break;
default:
toast.error("Something Error");
break;
}
return;
}
}, [error]);
const handleGoogleLogin = () => {
signIn();
};
+1 -7
View File
@@ -70,17 +70,11 @@ export default function LoginPage() {
useEffect(() => {
if (error) {
console.log(error);
console.log("login err", error);
switch (error.status) {
case "PARSING_ERROR":
toast.error(error.data);
break;
case 401:
toast.error("Username or Password incorrect");
break;
case 404:
toast.error("Account not exist");
break;
case 410:
toast.error(
"No associated account found, please contact admin for an invitation link to join."