Файлы не записываются на диск при использовании грозного / экспресса - PullRequest
0 голосов
/ 17 апреля 2020

У меня есть очень простой сценарий узла, который должен просто показать веб-страницу stati c с формой загрузки и записать любые загруженные файлы на диск.

const formidable = require('formidable')
const http = require('http')
var fs = require('fs');

const app = express()
const serve = http.Server(app)
const PORT = process.env.PORT || '5000'

// Display upload page at root
app.use(express.static('../client'))

//Start HTTP with express
serve.listen(PORT, () => {
    console.log(`Listening on ${PORT}`)
})

app.post('/submit-form', function (req, res){
    var form = new formidable.IncomingForm();

    form.on('fileBegin', function (name, file){
        file.path = __dirname + '/uploads/' + file.name;
    });

    form.parse(req);

    form.on('file', function (name, file){
        console.log('Uploaded ' + file.name);
    });

});

app.listen()

Страница отображается очень хорошо, и она отправляет отправить запрос, как и ожидалось, но я получаю эту ошибку после его загрузки:

Error: ENOENT: no such file or directory, open ' the path where the upload should be '
Emitted 'error' event at:
    at lazyFs.open (internal/fs/streams.js:273:12)
    at FSReqWrap.oncomplete (fs.js:141:20)

Я не могу найти никого с похожей ошибкой, но я предполагаю, что, возможно, я делаю что-то глупое.

Кто-нибудь может мне помочь?

...