Задать вопрос

Как правильно задать body в POST request, angular 6?

Конечно, я понимаю, что это делается так:
http.post(url, body);
body - это объект с key: value парами.

Тут то мне и не понятно, как он приходит на сервер. Как объект?
{email: 'mail@mail.com', password: 'pw'}
В таком случае ведь нельзя просто взять и сделать $_POST['email'] на сервере, так?
Приходит же объект. Как можно сформировать запрос, который будет удобно $_POST"ить?

Ведь если я использую не angular форму. Запрос приходит так:
username=mail%mail.com&password=pw
В данном случае все работает.
  • Вопрос задан
  • 455 просмотров
Подписаться 2 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
@Jmaster Автор вопроса
Если кому-то понадобится, этот хедер помог:
private options = {
        headers: new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' })
};
...
this.http.post( url, body, options);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@tonx92
В ангулар оставь:
{email: 'mail@mail.com', password: 'pw'}
На сервере можно обработать так:
$postData = file_get_contents('php://input');
$postData = json_decode($postData, true);
// Обращаться так
//$postData['email']
//$postData['password']
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы