34 / 10 / 2
Регистрация: 20.02.2016
Сообщений: 1,559
1

asForm() работает. post() не работает. Почему?

10.01.2021, 00:01. Показов 569. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день!



PHP
1
2
3
4
Route::get('dater', function(){
$resp=Http::asForm()->post('http://local.php',['name'=>'Jozi', 'data'=>'Data',]);
return $resp->body();
});
на странице local.php данные $_POST выводятся соответственно

PHP
1
echo $_POST['name']. " and  ". $_POST['data']
Так клиент работает.

Но если заменить asForm() на post()

PHP
1
2
3
4
Route::get('dater', function(){
$resp=Http::post('http://local.php',['name'=>'Jozi', 'data'=>'Data',]);
return $resp->body();
});
На local.php эти данные с массива $_POST не попадают. В чём тут проблема?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.01.2021, 00:01
Ответы с готовыми решениями:

Почему не работает вывод post?
Приветствую! На Laravel 8 делаю следующее. В папке paublic создал файл form.html <form...

Парсер. Почему не работает POST?
Разбираюсь с простейшими парсерами. Подскажите, почему не отправляется запрос POST из библиотеки...

Метод POST в JSP не работает...почему?
У меня есть форма, которая отправляет методом POST на JSP страницу. Пытаюсь читать параметр...

Почему не работает AJAX при отправке POST?
Всем привет! Есть AJAX код, который отправляет post данные с формы в php файл. Но почему-то этот...

3
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
10.01.2021, 12:11 2
Судя по доке Http::asForm() отправляет обычный application/x-www-form-urlencoded, т.е. это аналог формы из html и данные попадают в $_POST.

А вот Http::post уже использует application/json и в $_POST такое не попадает.

Я сам не пробовал (ларавел делает за меня), но гугл подсказывает такой вариант
PHP
1
2
$json = file_get_contents('php://input');
$data = json_decode($json);
0
34 / 10 / 2
Регистрация: 20.02.2016
Сообщений: 1,559
10.01.2021, 15:26  [ТС] 3
tarasalk, первый параметр url адрес, а второй параметр - массив который передаётся, как я понимаю на этот url.
Можно получить получить как-то обратно эту строку?
Ниже строка не работает, выдаёт NULL.

PHP
1
return $resp->json();
0
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
10.01.2021, 16:16 4
Если данных нет, либо их реально нет, либо в запросе произошла ошибка. В документации написано что ошибки по умолчанию не обрабатываются. Смотрите методы successful, throw и итп. В документации все это подробно и с примерами описано.
1
10.01.2021, 16:16
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.01.2021, 16:16
Помогаю со студенческими работами здесь

Цикл работает неправильно, в то время как POST работает
Всем привет! Я хотел написать под php скрипт с авторизацией, брут, на своем сайте(подбор пароля)....

Не работает метод POST в Денвере, GET работает
Помогите кто может, с Get работает, с POST или post приходят только вопросы без ответов. Вот кусок...

HTML + PHP GET работает, POST не работает
Всем добрый день! Собсно, subj. Уже неделю всяко разно хожу вокруг да около. Не передает POST'ом....

Ноутбук работает только с Wi Fi роутера дома, в кафе не работает и везде. Почему?
Подскажите пожалуйста, почему у меня ноутбук с виндой 7, работает вай фай только дома с роутера. А...

Не работает изменение, не могу понять почему, Update не работает, ошибку выдает
Помогите, изменение с помощью button string u =...

Почему цикл for (java script) не работает в браузерах от гугла, яндекса, но работает в IE
Подскажите почему цикл for не выполняется в браузерах от гугла и хром, но выполняется в IE: изучая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru