Файл поврежден при загрузке с использованием многосетевого узла js - PullRequest
0 голосов
/ 28 мая 2018

Я реализовал пример загрузки multer для restful, используя express .Следующий код является кодом сервера.

var storage = multer.diskStorage({
        destination: function (req, file, cb) {
          cb(null, './files/')
        },
        filename: function (req, file, cb) {
          crypto.pseudoRandomBytes(16, function (err, raw) {
            cb(null, raw.toString('hex') + Date.now() + '.xsd');
          });
        }
});

var cpUpload = multer({ storage: storage, limits: {fileSize: 1000000}}).single('schema-file');

var app = express(); 
app.use(function(req, res, next) {
        res.header("Access-Control-Allow-Origin", "*");
        res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
        res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS');
        next();
});

app.post('/ws-api-designer-upload-files', cpUpload, function (req, res, next) {

        console.log("filepath " + req.file.filename);
        cpUpload(req,res,function(err){

            if(err){
                res.set('Content-Type', 'application/json');
                res.end(JSON.stringify({
                    status: 'ERROR 1',
                    description: err.message
                }));
                return;
            }else{
                res.set('Content-Type', 'application/json');
                res.end(JSON.stringify({
                    status: 'SUCCESS 1',
                    description: 'success'
                }));
                return;             
            }
        });

});

Но когда я вызываю эту службу с помощью почтальона, файл загружается, но когда я сравниваю исходный файл с загруженным файлом, загруженный файл поврежден.Я борюсь с этой проблемой почти 1 неделю, пожалуйста, помогите.

Обратите внимание, что эта проблема возникает, когда код работает на Windows Server 2008 r2.Поэтому, когда я запускаю этот код сервера на localhost, не было никаких проблем, таких как поврежденный файл.И я загружаю только xsd-файл размером 173 КБ.

Этот загруженный файл (поврежден) загруженный файл

Это оригинальный файл оригинальныйфайл

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...