Как ответить, не перезагружая мою текущую страницу? - PullRequest
0 голосов
/ 24 сентября 2019

У меня есть Express API, который используется для загрузки файлов в каталог файлов.Всякий раз, когда я вызываю мой API, res.send перенаправляет на новую страницу.Как я могу выполнить этот API с перезагрузкой моей текущей страницы?

app.post('/upload', function(req, res) {
  let sampleFile;
  let uploadPath;

  if (Object.keys(req.files).length == 0) {
    res.status(400).send('No files were uploaded.');
    return;
  }

  console.log('req.files >>>', req.files); // eslint-disable-line


  sampleFile = req.files.sampleFile;
  console.log('lusu', sampleFile); // eslint-disable-line


  uploadPath = __dirname + '/uploads/' + sampleFile.name;

  sampleFile.mv(uploadPath, function(err) {
    if (err) {
      return res.status(500).send(err);
    }

    res.send('File uploaded to ' + uploadPath);
  });
});

1 Ответ

0 голосов
/ 24 сентября 2019

Прежде всего, я хотел бы рекомендовать пакет multer для загрузки файла в узле js.


вместо res.send(), try res.status(200).json({message:"successfully uploaded"})


попробуйте отладку на внешнем интерфейсе,Предположим, у вас есть функция для загрузки файла, как показано ниже,

function fileUpload(){

http.post('url',{headers:headers}).then(res){

// Try to handle the response here. Do not write anything that reloads the page.

}

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