Как передать post параметры в http.client Angular
С чём может быть связано, что angular httpClient не шлёт post параметры?
Сразу скажу- документацию я читал.
Сервер на php и при тесте через Postman и средства отладки принимает post параметры.
Я сделал даже вывод всех post параметров, но вот только angular почему-то их не шлёт.
public urlapi = 'http://localhost:81/api.php';
private httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json'
})
};
public GetOrders(): Observable<[]>{
const postBody = {'param': 'value'};
return this.http.post(this.urlapi, postBody , this.httpOptions)
.pipe(map(data => {
return data.map((element: any) => {
return {id: element.Id};
});
}));
Я хочу сосчитать на сервере эти параметры, но вижу пустой список параметров, которые я вывожу var_dump($_REQUEST);
В чём может быть дело, если бекенд рабочий и выводит данные? я перерыл пол дня кучу документации и не разберусь. Это с заголовками не может быть связано?
Ответы (1 шт):
Вообщем странно, но так заработало
const formData = new FormData();
formData.append('picture', file);
formData.append('OrderId', this.ordersService.SelectedOrder['Id']);
и formData подставляю
return this.http.post(this.urlapi, formData , this.httpOptions)
А вот так - не работало, хотя везде в интернете написано так const formData = {'param': 'value'};