reports.js 683 B

12345678910111213141516171819202122232425262728293031
  1. import express from "express";
  2. import internalReport from "../internal/report.js";
  3. import jwtdecode from "../lib/express/jwt-decode.js";
  4. import { express as logger } from "../logger.js";
  5. const router = express.Router({
  6. caseSensitive: true,
  7. strict: true,
  8. mergeParams: true,
  9. });
  10. router
  11. .route("/hosts")
  12. .options((_, res) => {
  13. res.sendStatus(204);
  14. })
  15. /**
  16. * GET /reports/hosts
  17. */
  18. .get(jwtdecode(), async (req, res, next) => {
  19. try {
  20. const data = await internalReport.getHostsReport(res.locals.access);
  21. res.status(200).send(data);
  22. } catch (err) {
  23. logger.debug(`${req.method.toUpperCase()} ${req.path}: ${err}`);
  24. next(err);
  25. }
  26. });
  27. export default router;