Я собираюсь показать вам, как вы можете это решить, используя модуль serve-static для Node.js/Express.
1). Прежде всего установите модуль для среды разработки: npm i -D serve-static
.
2). Создать serve-static
каталог в каталоге api/hooks
.
3). Создайте файл index.js
в каталоге serve-static
, созданном ранее.
4). Добавьте к нему следующее содержание:
module.exports = function serveStatic (sails) {
let serveStaticHandler;
if ('production' !== sails.config.environment) {
// Only initializing the module in non-production environment.
const serveStatic = require('serve-static');
var staticFilePath = sails.config.appPath + '/.tmp/public';
serveStaticHandler = serveStatic(staticFilePath);
sails.log.info('Serving static files from: «%s»', staticFilePath);
}
// Adding middleware, make sure to enable it in your config.
sails.config.http.middleware.serveStatic = function (req, res, next) {
if (serveStaticHandler) {
serveStaticHandler.apply(serveStaticHandler, arguments);
} else {
next();
}
};
return {};
};
5). Редактировать config/http.js
файл и добавьте предварительно определенные промежуточный уровень:
module.exports.http = {
middleware: {
order: [
'serveStatic',
// ...
]
}
};
6). Перезапустите/запустите приложение, например. node ./app.js
и попытайтесь извлечь один из статических файлов. Он должен работать.