отправить файл с одного сервера на другой - PullRequest
0 голосов
/ 24 марта 2019

Я делаю приложение, в котором файл загружается на сервер с помощью multipart / form-data. Чтобы получить запрос Multipart / form-data в Node js, я использую multer и храню этот файл на диске.Затем я делю эти файлы на 3 части.

Теперь я хочу, чтобы сервер отправлял эти части на несколько серверов.


const express = require('express');

const path = require('path');

const multer = require('multer');

const methodOverride = require('method-override');

const bodyParser = require('body-parser');

const PORT = 4000;

const crypto = require('crypto');

const fs = require('fs');

const splitFile = require('split-file');

const app = express();

app.use(bodyParser.json());
app.use(methodOverride('_method'));


var storage = multer.diskStorage({
  destination: function (req, file, cb) {
    cb(null, upload_path)
  },
  filename: function (req, file, cb) {
    cb(null, file.originalname)
  }
})


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

app.post('/upload', upload.single('file'), (req, res) => {

  res.redirect('localhost:3000/');
})

app.post('/encrypt/:id', (req, res) => {
  console.log(req.params.id);

  console.log(enc_path + '\\' + req.params.id);

  var key = 
 '14189dc35ae35e75ff31d7502e245cd9bc7803838fbfd5c773cdcd79b8a28bbd';
  var cipher = crypto.createCipher('aes-256-cbc', key);
  var input = fs.createReadStream(upload_path + '//' + req.params.id);
  var output = fs.createWriteStream(enc_path + '//' + req.params.id);
  input.pipe(cipher).pipe(output);

  output.on('finish', function () {
    console.log('Encrypted file written to disk!');
  });


})

app.post('/split/:id', (req, res) => {
  console.log(req.params.id);

  splitFile.splitFile(enc_path + '\\' + req.params.id, 3).then((names) => {


  })

})

app.listen(PORT, function () {
  console.log("Server is running on Port " + PORT);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...