recursos-catolicos/js/api-config.js

32 lines
991 B
JavaScript

// Configuración central de la API
// En local (localhost / 127.0.0.1) apunta al backend Docker; en producción, al servidor real.
const API_BASE = (
location.hostname === "localhost" ||
location.hostname === "127.0.0.1" ||
location.hostname === "" // file:// abierto directamente
) ? "http://localhost:8080"
: "https://recursos-catolicos.es:8080";
/**
* Realiza una llamada autenticada a la API.
* Si el servidor devuelve 401 (token caducado/inválido), cierra la sesión automáticamente.
*/
async function apiCall(endpoint, options = {}) {
const token = getToken();
const headers = {
"Content-Type": "application/json",
...(token ? { "Authorization": `Bearer ${token}` } : {}),
...(options.headers || {})
};
const response = await fetch(`${API_BASE}${endpoint}`, {
...options,
headers
});
if (response.status === 401) {
cerrarSesion();
return null;
}
return response;
}