17 lines
600 B
JavaScript
17 lines
600 B
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
const uploadService = require('../services/uploadService');
|
|
const driveService = require('../services/driveService');
|
|
|
|
router.get('/:filename', async (req, res) => {
|
|
const file = await uploadService.getUploadByFilename(req.params.filename);
|
|
if (!file) return res.sendStatus(404);
|
|
|
|
const stream = driveService.openFile(req.params.filename);
|
|
if (!stream) return res.sendStatus(404);
|
|
|
|
res.setHeader('Content-Disposition', `attachment; filename="${file.originalFilename}"`);
|
|
stream.pipe(res);
|
|
});
|
|
|
|
module.exports = router;
|