Angular 5 - FileUpload не работает - PullRequest
0 голосов
/ 29 мая 2018

Редактировать: Исправлено.Я должен был добавить это к своему ответу:

.subscribe(data =>{
  console.log('data is here: ', data);
});

Я прочитал целую кучу статей по этому вопросу, но не могу заставить его работать.

Среда: Angular 5, NodeJS backendс экспрессом.Использование Express-FileUpload для загрузки файла.

Я попробовал мой API с этим простым HTML:

<html>
  <body>
    <form ref='uploadForm' 
      id='uploadForm' 
      action='http://192.168.1.20:8275/api/upload' 
      method='post' 
      encType="multipart/form-data">
        <input type="file" name="sampleFile" />
        <input type='submit' value='Upload!' />
    </form>     
  </body>
</html>

Я понял, что мой API работает нормально, Конечная точка API получает запрос от HTMLпросто хорошо.Вот что я пытаюсь сделать Angular:

let body = new FormData();
  body.append("file", file, 'thefilename');
  let options: RequestOptions = new RequestOptions();
  options.headers = new Headers();
let response: Observable<Response> = this.http.post('http://192.168.1.20:8275/api/upload', body, options); //code just breaks here and exists silently

response.map(json =>{
  console.log('gotcha')
}),err =>{
  console.log('error: ', err);
};

Код Angular не работает.После POST-вызова он прерывается и бесшумно завершается.Ничего в консоли, нет ошибки.И я не могу понять, почему?Я прочитал статьи и обнаружил, что нам не нужно предоставлять тип контента, чтобы он работал.Я тоже это попробовал, но не повезло.В чем может быть проблема?

...