Actualizado el manejo de errores para el iti68

This commit is contained in:
Alejandro Gomez Auad 2026-04-30 16:02:38 +00:00
parent 9be8780edf
commit a7cce12679
2 changed files with 9 additions and 4 deletions

View File

@ -59,6 +59,15 @@ app.use(function (req, res, next) {
// Error handler
app.use(function (err, req, res, _next) {
// Error proveniente de HAPI FHIR o del Bus: reenviar la respuesta tal como llegó
if (err.response) {
const status = err.response.status;
console.warn(`[${new Date().toISOString()}] ${req.method} ${req.originalUrl} -> ${status} (upstream)`);
const contentType = err.response.headers?.['content-type'];
if (contentType) res.setHeader('Content-Type', contentType);
return res.status(status).json(err.response.data);
}
const status = err.status || 500;
if (status >= 500) {
console.error(`[${new Date().toISOString()}] ${req.method} ${req.originalUrl} -> ${status}`, err);

View File

@ -1,4 +1,3 @@
const createError = require('http-errors');
const config = require('../config');
const { getResourceByUrl } = require('../services/fhir');
@ -15,9 +14,6 @@ async function getBundleById(req, res, next) {
const bundle = await getResourceByUrl(`${config.fhir.url}/Bundle/${req.params.id}`);
res.status(200).json(bundle);
} catch (err) {
if (err.response) {
return next(createError(err.response.status, `HAPI FHIR returned ${err.response.status}`));
}
next(err);
}
}