redirect fixed
This commit is contained in:
parent
bc47e1d39a
commit
01017bb36e
@ -14,8 +14,13 @@ const Login = () => {
|
||||
setError('');
|
||||
|
||||
try {
|
||||
await login(username, password); // Changed to pass username and password separately
|
||||
navigate('/dashboard');
|
||||
const userData = await login(username, password);
|
||||
console.log('Login result:', userData);
|
||||
if (userData?.isAdmin) {
|
||||
navigate('/admin');
|
||||
} else {
|
||||
navigate('/dashboard');
|
||||
}
|
||||
} catch (err) {
|
||||
setError('Invalid credentials');
|
||||
}
|
||||
|
||||
@ -28,40 +28,41 @@ export const AuthProvider = ({ children }) => {
|
||||
|
||||
fetchUser();
|
||||
}, []);
|
||||
// const login = async (username, password) => {
|
||||
// try {
|
||||
// const response = await api.post('/auth/login', { username, password });
|
||||
// const { access_token, user } = response.data; // Make sure this matches your backend response
|
||||
|
||||
// localStorage.setItem('token', access_token);
|
||||
// setUser(user);
|
||||
// return user;
|
||||
// } catch (error) {
|
||||
// console.error('Login error:', error);
|
||||
// throw error;
|
||||
// }
|
||||
// };
|
||||
const login = async (username, password) => {
|
||||
try {
|
||||
const response = await api.post('/auth/login', { username, password });
|
||||
const { access_token } = response.data; // Make sure this matches your backend response
|
||||
console.log('Login response:', response.data); // Debug log
|
||||
|
||||
const { access_token } = response.data;
|
||||
localStorage.setItem('token', access_token);
|
||||
|
||||
// After setting token, fetch user info
|
||||
// Fetch user info after login
|
||||
const userResponse = await api.get('/auth/user-info');
|
||||
setUser(userResponse.data);
|
||||
const userData = userResponse.data;
|
||||
|
||||
return userResponse.data;
|
||||
setUser(userData);
|
||||
return userData; // Return the user data for redirect logic
|
||||
} catch (error) {
|
||||
console.error('Login error:', error);
|
||||
throw error;
|
||||
}
|
||||
};
|
||||
|
||||
// const login = async (username, password) => { // Changed parameters
|
||||
// try {
|
||||
// const response = await api.post('/auth/login', { username, password });
|
||||
// const { token } = response.data; // Updated to match backend response
|
||||
// localStorage.setItem('token', token);
|
||||
|
||||
// // Fetch user info after successful login
|
||||
// const userResponse = await api.get('/auth/user-info');
|
||||
// setUser(userResponse.data);
|
||||
|
||||
// return userResponse.data;
|
||||
// } catch (error) {
|
||||
// console.error('Login error:', error);
|
||||
// throw error;
|
||||
// }
|
||||
// };
|
||||
|
||||
|
||||
|
||||
const logout = () => {
|
||||
localStorage.removeItem('token');
|
||||
|
||||
@ -8,11 +8,7 @@ const api = axios.create({
|
||||
// withCredentials: true,
|
||||
});
|
||||
|
||||
// const api = axios.create({
|
||||
// baseURL: 'http://localhost:3000',
|
||||
// });
|
||||
|
||||
// Add a request interceptor
|
||||
// Add authorization header to all requests
|
||||
api.interceptors.request.use(
|
||||
(config) => {
|
||||
const token = localStorage.getItem('token');
|
||||
@ -41,65 +37,6 @@ export const downloadDocument = async (documentId) => {
|
||||
}
|
||||
};
|
||||
|
||||
// Request interceptor
|
||||
// api.interceptors.request.use((config) => {
|
||||
// const token = localStorage.getItem('token');
|
||||
// if (token) {
|
||||
// config.headers.Authorization = `Bearer ${token}`;
|
||||
// }
|
||||
// return config;
|
||||
// });
|
||||
|
||||
// // Response interceptor
|
||||
// api.interceptors.response.use(
|
||||
// (response) => response,
|
||||
// (error) => {
|
||||
// if (error.response?.status === 401) {
|
||||
// localStorage.removeItem('token');
|
||||
// }
|
||||
// return Promise.reject(error);
|
||||
// }
|
||||
// );
|
||||
|
||||
// const api = axios.create({
|
||||
// baseURL: API_URL,
|
||||
// withCredentials: true,
|
||||
// });
|
||||
|
||||
// api.interceptors.request.use((config) => {
|
||||
// const token = localStorage.getItem('token');
|
||||
// if (token) {
|
||||
// config.headers.Authorization = `Bearer ${token}`;
|
||||
// }
|
||||
// return config;
|
||||
// });
|
||||
// export const createUser = (userData) => api.post('/admin/users', userData);
|
||||
|
||||
// const api = axios.create({
|
||||
// baseURL: import.meta.env.VITE_API_URL || 'http://localhost:3000',
|
||||
// withCredentials: true,
|
||||
// });
|
||||
|
||||
// // Request interceptor
|
||||
// api.interceptors.request.use((config) => {
|
||||
// const token = localStorage.getItem('token');
|
||||
// if (token) {
|
||||
// config.headers.Authorization = `Bearer ${token}`;
|
||||
// }
|
||||
// return config;
|
||||
// });
|
||||
|
||||
// // Response interceptor
|
||||
// api.interceptors.response.use(
|
||||
// (response) => response,
|
||||
// (error) => {
|
||||
// if (error.response?.status === 401) {
|
||||
// localStorage.removeItem('token');
|
||||
// window.location.href = '/login';
|
||||
// }
|
||||
// return Promise.reject(error);
|
||||
// }
|
||||
// );
|
||||
export const createUser = (userData) => {
|
||||
return api.post('/admin/users', {
|
||||
name: userData.name,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user