溫馨提示×

nodejs php中如何實現文件上傳下載

PHP
小樊
101
2024-08-14 12:14:41
欄目: 編程語言

在Node.js中實現文件上傳和下載可以使用multer中間件來處理文件上傳,使用fs模塊來處理文件下載。

  1. 文件上傳:
const express = require('express');
const multer = require('multer');
const app = express();

const storage = multer.diskStorage({
  destination: function (req, file, cb) {
    cb(null, 'uploads/') // 保存文件的目錄
  },
  filename: function (req, file, cb) {
    cb(null, file.originalname) // 保存文件的原始名稱
  }
});

const upload = multer({ storage: storage });

app.post('/upload', upload.single('file'), (req, res) => {
  res.send('File uploaded successfully');
});

app.listen(3000, () => {
  console.log('Server running on port 3000');
});
  1. 文件下載:
const express = require('express');
const fs = require('fs');
const app = express();

app.get('/download', (req, res) => {
  const file = 'path/to/file.pdf'; // 要下載的文件路徑

  fs.readFile(file, (err, data) => {
    if (err) {
      res.status(404).send('File not found');
    } else {
      res.setHeader('Content-Disposition', 'attachment; filename=' + file);
      res.setHeader('Content-Type', 'application/pdf');
      res.send(data);
    }
  });
});

app.listen(3000, () => {
  console.log('Server running on port 3000');
});

以上代碼演示了在Node.js中實現文件上傳和下載的方法,通過multer中間件處理文件上傳,通過fs模塊處理文件下載。在實際項目中,可以根據需求對文件上傳和下載的邏輯進行更進一步的處理。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女