Мне нужен был сервер, чтобы сохранять в файл данные из POST запроса.
я создал новый сайт на хостинге, прицепил к нему домен от freenom, в index.php написал
var_dump($_POST), послал на него такой запрос через консоль браузера
let response = await fetch('https://color-msg-slv.tk/', {
method: 'POST',
body: {data: 'gg'}
});
let result = await response.text();
console.log(result);
Но в массиве$_POST ничего не было. Я попробовал разные варианты - body: JSON.stringify({data: 'gg'}) formData - но ничего не помогло. Я обратился в тех.поддержку, там 2 дня решали вопрос, в итоге мне сказали указать заголовок
'Content-Type': 'application/x-www-form-urlencoded' - с ним мне удалось отправить body: 'gg', но всякие объекты - нет.
Я попробовал headers: { 'Content-Type': 'application/json' + JSON.stringify({data: 'gg'}) - тоже не помогло
let response = await fetch('https://color-msg-slv.tk/', {
method: 'POST',
body: JSON.stringify({
data: '123'
}),
headers: {
'Content-Type': 'application/json'
}
});
console.log(await response.text())
let response = await fetch('https://color-msg-slv.tk/', {
method: 'POST',
body: (new FormData()).append('data', '123'),
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
} }); console.log(await response.text())
При этом через postman POST запрос работает правильно - то есть var_damp выводит то, что я и отправил, а не пустоту
Из-за чего это происходит? У меня есть второй сайт на этом хостинге, и там всё работает нормально.
FormData, php не умеет json в POST из коробки – ArchDemon Aug 01 '21 at 15:09FormDataвынести в переменную. Почему-то(new FormData())не работает – Color kat Aug 03 '21 at 17:56