Невозможно отправить файл на сервер из AngularJS с токеном доступа и ng-file-upload - PullRequest
0 голосов
/ 11 июня 2018

Я использую AngularJS 1.6 для отправки файла на сервер.Сервер использует Multer для чтения файлов, и я предоставляю маркер безопасного доступа для каждого загруженного файла.

В проекте используется ng-file-upload, который использует Upload.upload() для отправки файлов.Проблема появляется, когда у вас есть токен доступа для отправки вместе с файлом.Я не знаю, что происходит, но нет параметров, отправляемых на сервер с помощью Upload.upload().Я попытался использовать $http, и этот метод отправляет параметры, но не загружает файл на сервер по адресу request.file.

Внешний код выглядит следующим образом

Upload.upload({
        url: '/upload_to_file_path',
        arrayKey: '',
        headers: {'Content-Type': undefined},
        method: 'POST',
        file: file,
        data:
        {
          email: someData.email,
          auth_token: someData.auth_token,
        },
      })

Когда я использую$ http за вышесказанное, он отправляет токен, но не файл.

В конце концов,

exports.uploads = (req, res, err) => 
{
  if (req.file == null)
  {
    //File is unable to be read here
    res.send({ msg: "filename is undefined", success: true, statusCode: 422 });
    return;
}

Я теряю голову над этим, поскольку я относительно новичок в AngularJS,Я использовал Multer раньше, поэтому я сомневаюсь, что проблема возникает на сервере.

Буду признателен за помощь.Я уже некоторое время ищу решение, но боюсь, что не могу выяснить, в чем дело.

Спасибо за помощь

...