#node.js #express
#node.js #экспресс
Вопрос:
Можно ли этим манипулировать, чтобы получить другие части сервера?
const downloadRoot = './uploads/'
app.get("/uploads/:id", (req, res) => {
const fullPath = path.resolve(path.join(downloadRoot, req.params.id));
res.download(fullPath, (err) => {
if (err) {
console.log(err);
}
})
});
Ответ №1:
Я приведу вам пример с моделями БД.
У вас есть index.js в папке /models с
const mongoose = require('mongoose');
mongoose.Promise = global.Promise;
const db = {};
db.mongoose = mongoose;
db.token = require("./token.model");
db.user = require("./user.model");
module.exports = db;
Тогда вы можете получить доступ (не манипулировать /models/index.js ). В противном случае вы можете изменить экземпляр в каждом файле .js
Пример в app.js
require("dotenv").config();
const db = require("./db/models");
db.mongoose
.connect(process.env.DB_URL, {
useNewUrlParser: true,
useUnifiedTopology: true,
createIndexes: true
})
.then(() => {
console.log("Successfully connect to MongoDB.");
})
.catch(err => {
console.error("Connection error", err);
process.exit();
});
module.exports делает это