@md5inj
Junior Frontend, Delphi, c++

Как в fetch добавить post данные?

Здравствуйте, отправляю POST запрос на сервер вот так
drawTable(store = 1) {
        fetch(this.state.data.pricesUrl + `?form_key=${FORM_KEY}`, {
            method: 'POST',
            mode: 'cors', // no-cors, *cors, same-origin
            cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached
            credentials: 'same-origin', // include, *same-origin, omits
            redirect: 'follow', // manual, *follow, error
            referrerPolicy: 'no-referrer',
            headers: {
                'Content-Type': 'application/json'
            },
            body: JSON.stringify({
                store: store
            })
        })

Когда на сервер идёт запрос в дев тулах есть данные запроса:
{"store":1}
Но когда сервер начинает отрабатывать он видит что это пост запрос, но параметров никаких не видит.
  • Вопрос задан
  • 261 просмотр
Решения вопроса 1
DanilYuma
@DanilYuma
В Вашем исполнении запроса на сервере следует принимать данные через
$post = file_get_contents('php://input');
// $post -> JSON строка

Если нужно получить данные через $_POST, то нужно в параметр body передать объект FormData
К примеру:
let formData = new FormData();
formData.append('store', store);
fetch(this.state.data.pricesUrl + `?form_key=${FORM_KEY}`, {
    method: 'POST',
    body: formData
})
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы