25 lines
780 B
TypeScript
25 lines
780 B
TypeScript
/**
|
|
* Cliente para la API de Dolibarr
|
|
* Ahora usa la API Route de Next.js (/api/dolibarr) en lugar de llamar directamente
|
|
* Esto mantiene la API key segura en el servidor
|
|
*/
|
|
export async function dolibarrFetch(endpoint: string, options: RequestInit = {}) {
|
|
// Usar la API Route en lugar de llamar directamente a Dolibarr
|
|
const url = `/api/dolibarr/${endpoint}`;
|
|
|
|
const res = await fetch(url, {
|
|
...options,
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
...options.headers,
|
|
},
|
|
});
|
|
|
|
if (!res.ok) {
|
|
const errorData = await res.json().catch(() => ({ error: 'Unknown error' }));
|
|
console.error("Error en la llamada Dolibarr:", res.status, errorData);
|
|
throw new Error(errorData.error || "Dolibarr API error");
|
|
}
|
|
|
|
return res.json();
|
|
} |