const router = require("express").Router(); const response = require("./response-wrapper"); // const config = require('../../config-handler'); // Парсинг куки //router.use(require('cookie-parser')()); // Загрузка музыки при помощи спец. метода function muzicLoad(req, res) { res.setHeader("Content-Type", "audio/mpeg"); global.database.muzic.get( (err, data) => { data = data[0]?.data; if (err) { res.send(Buffer.from([])); } else { res.send(!data ? Buffer.from([]) : data); } }, { where: { id: !Number.isInteger(+req.query.id) ? 0 : +req.query.id } }, ); } // Подгрузка с файла router.use("/:method_name", async (req, res, next, ...etc) => { if (req.params.method_name === "muzic") { muzicLoad(req, res); return; } try { const methodFunct = require(`./methods/${req.params.method_name}`); response(methodFunct, req, res); } catch (e) { if (e.message.includes("Cannot find module")) { const ApiError = require("./errorClass"); res.status(400).sendModed( await response( (req, res) => { throw new ApiError("METHOD_NOT_FOUNDED"); }, req, res, ), ); } else { response( async () => { throw e; }, req, res, ); } } }); module.exports = router;