Skip to content

Commit 1e74939

Browse files
committed
fixed: Signup.jsx to correctly extract the message string. and improved error handling in signup and login
1 parent 71cb507 commit 1e74939

2 files changed

Lines changed: 28 additions & 7 deletions

File tree

frontend/src/pages/Login.jsx

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,17 @@ function Login() {
4747
} catch (err) {
4848
console.error(err);
4949
toast.dismiss(loadingToast);
50-
const errorMessage = err.response?.data || 'Login failed. Check your credentials.';
50+
const data = err.response?.data;
51+
let errorMessage = 'Login failed. Check your credentials.';
52+
53+
if (data?.error) {
54+
if (typeof data.error === 'string') {
55+
errorMessage = data.error;
56+
} else if (Array.isArray(data.error)) {
57+
errorMessage = data.error[0]?.message || 'Validation failed';
58+
}
59+
}
60+
5161
toast.error(errorMessage);
5262
setIsLoading(false);
5363
}

frontend/src/pages/Signup.jsx

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,16 +37,27 @@ function Signup() {
3737
const response = await axios.post(`${API_URL}/api/auth/register`, formData);
3838

3939
toast.dismiss(loadingToast);
40-
toast.success(response.data); // "Registered successfully"
40+
toast.success(response.data.message); // "Registered successfully"
4141

42-
// Redirect to login page after a short delay
43-
setTimeout(() => {
44-
navigate('/login');
45-
}, 1500);
42+
43+
navigate('/login');
4644

4745
} catch (err) {
4846
toast.dismiss(loadingToast);
49-
const errorMessage = err.response?.data || 'Signup failed. Please try again.';
47+
const data = err.response?.data;
48+
let errorMessage = 'Signup failed. Please try again.';
49+
50+
if (data?.error) {
51+
if (typeof data.error === 'string') {
52+
errorMessage = data.error;
53+
} else if (Array.isArray(data.error)) {
54+
// Handle Zod array
55+
errorMessage = data.error[0]?.message || 'Validation failed';
56+
} else {
57+
errorMessage = JSON.stringify(data.error);
58+
}
59+
}
60+
5061
toast.error(errorMessage);
5162
}
5263
};

0 commit comments

Comments
 (0)