#angular
#angular
Вопрос:
Мне нужно ОТПРАВИТЬ небольшой файл на сторонний сервер. Я уже разместил требуемые поля, и это сработало идеально, но я не знаю, как установить файл с помощью body.set
Вот мой код на .ts:
var APIURL = sessionStorage.getItem('endpoint') "/setattributes";
let options = { headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded') };
let body = new URLSearchParams();
body.set('id', this.id);
body.set('session', encodeURIComponent(sessionStorage.getItem('session')));
body.set('token', encodeURIComponent(sessionStorage.getItem('token')));
body.set('channel', encodeURIComponent(channel));
this.httpClient.post(APIURL, body.toString(), options).subscribe(
result => { .....
И вот мой HTML
<input type='file' (change)="onSelectFile($event)" class="NiceUpload" id="file" accept=".log">
Они говорят, что мне нужно ОПУБЛИКОВАТЬ файл, поскольку я публикую остальные поля, и назовите его «logfile», но body.set не работает.
Есть предложения?
Спасибо!
Ответ №1:
Предлагается добавить значение в переменную option
withCredentials: true
let options = { headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded'), withCredentials: true};