Здравствуйте!
Я хочу смоделировать POST-запрос, не отправляя его через форму или не используя это: $_POST['test_query'] = 'data';
Например, я хочу при написании тестов сымитировать отправление данных. Или вытащить их из POST-запроса. Имеется ли у PHP такая возможность (или, если говорить про последний вопрос, позволяет ли протокол HTTP поступить таким образом)? Заранее спасибо!
FanatPHP, Да, забанили. Я, естественно, ничего не читал перед тем, как задать вопрос, ничего не гуглил, а просто решил спросить, думая, что за меня всё решат.
Нет, все было не так:
Я не нашел ответа на свой вопрос, потому решил задать его здесь.
FanatPHP, слушай, а можешь, пожалуйста, открыть сайт помощи в гуглинге? Очень полезный ресурс будет, у тебя как раз времени много свободного, хоть делом займешься
он уже есть, https://letmegooglethat.com/
но тебе нужна помощь не в том чтобы гуглить, а в том чтобы читать.
найти ответ на свой вопрос ты находишь. но почему-то его не читаешь
Спасибо, я бы загуглил это перед тем, как писать тот коммент, но просто не умею этого делать, не обессудь.
но тебе нужна помощь не в том чтобы гуглить, а в том чтобы читать.
найти ответ на свой вопрос ты находишь. но почему-то его не читаешь
Я тебе с упорством фаната PHP объясняю, что я гуглил и не находил правильного ответа. Нигде не было написано, условно: "чтобы достать POST-запрос из http сделайте следующее". И в том ресурсе такого тоже не было.
Ответ на вопрос "чтобы в РНР достать POST-запрос из http сделайте следующее" написан во всех учебниках для нубов.
Он звучит как "обратитесь к массиву $_POST"
Если он тебе неизвестен, то рекомендую этот самый учебник купить, и начать читать
Я прошу прощения, вчера явно был не мой день
вопросы у тебя нормальные, а я слишком быстро раздражаюсь
просто ты навалил всё в кучу - тесты (это один вопрос), эмуляция, эмуляция поста, да ещё и доступ к этому эмулированному запросу "из заголовков".
при том что каждый вопрос отдельный и имеет свой собственный ответ
FanatPHP, случайно потерял тот аккаунт, потому с нового отвечу:
Ты тоже меня извини, я себя вел не слишком культурно и уважительно.
Еще раз спасибо за помощь%)
По хорошему ваши контроллеры обрабатывающие эти самые POST запросы принимают в качестве зависимости, или одного из аргументов метода какой-нибудь Request объект, являющийся обстракцией над HTTP-запросом.
В таком случае всё что потребуется для тестирования таких контроллеров - замокать этот объект, прикинув в него все необходимые для теста значения.
PetroFique, ты сейчас смеёшься?
что ты называешь "достать из заголовков"? Зачем?
РНР тебе уже всё достал. И положил в $_POST['test_query'].
Если ты такое поле в своем "имитированном запросе" отправлял.
Ты похоже опять ничего не попробовав на практике, пытаешься оперировать какими-то фантазиями и отнимаешь время у себя и окружающих
о господи
ты вообще в состоянии запомнить, о чем говорил на один комментарий назад?
Речь не о том чтобы записать. Ты спрашивал про то как достать.
читай ещё раз, внимательно: РНР тебе уже всё достал. Из НТТР заголовков. И положил в $_POST['test_query'].
что здесь непонятно?
PetroFique, если вам нужно тестировать post запросы, но до Unit- тестирования вы ещё не добрались - запросы можно формировать через какой-нибудь Postman.
Браузеры в отладочной консоли (network monitor) позволяют на выбранном запросе из лога (нажав правую кнопку - copy - copy as curl) получить готовую строчку запуска curl полностью симулирующю его.