Fase 2: Creatción de la UI (React + Vite). Implementación de Log In reemplazando texto plano. Y creación de tool para migrar contraseñas.
This commit is contained in:
		
							
								
								
									
										30
									
								
								Frontend/src/services/apiClient.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								Frontend/src/services/apiClient.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| import axios from 'axios'; | ||||
|  | ||||
| // Obtén la URL base de tu API desde variables de entorno o configúrala aquí | ||||
| // Asegúrate que coincida con la URL donde corre tu API ASP.NET Core | ||||
| const API_BASE_URL = 'http://localhost:5183/api'; // ¡AJUSTA EL PUERTO SI ES DIFERENTE! (Verifica la salida de 'dotnet run') | ||||
|  | ||||
| const apiClient = axios.create({ | ||||
|   baseURL: API_BASE_URL, | ||||
|   headers: { | ||||
|     'Content-Type': 'application/json', | ||||
|   }, | ||||
| }); | ||||
|  | ||||
| // Interceptor para añadir el token JWT a las peticiones (si existe) | ||||
| apiClient.interceptors.request.use( | ||||
|   (config) => { | ||||
|     const token = localStorage.getItem('authToken'); // O donde guardes el token | ||||
|     if (token) { | ||||
|       config.headers.Authorization = `Bearer ${token}`; | ||||
|     } | ||||
|     return config; | ||||
|   }, | ||||
|   (error) => { | ||||
|     return Promise.reject(error); | ||||
|   } | ||||
| ); | ||||
|  | ||||
| // Puedes añadir interceptores de respuesta para manejar errores globales (ej: 401 Unauthorized) | ||||
|  | ||||
| export default apiClient; | ||||
		Reference in New Issue
	
	Block a user