@River0051

Как сделать асинхронный POST запрос через Guzzle?

Добрый день, у меня на странице нужно сделать более 20 запросов на сервер в разных частях кода/сайта, если использовать js ajax, то это хорошо работает, но я хочу сделать это средствами php, асинхронные запросы.

я установил composer и Guzzle

я начал тестировать с стандартным кодом предлагаемым на гите

$client = new \GuzzleHttp\Client();
// Send an asynchronous request.
$request = new \GuzzleHttp\Psr7\Request('GET', 'https://google.ru');
$promise = $client->sendAsync($request)->then(function ($response) {
    echo 'I completed! ' . $response->getBody();
});

$promise->wait();


Если делать запрос на главную страницу, любую, это работает, весь сайт показывается, но мне нужно сделать POST запрос на конкретную страницу с функцией, передать ей параметры и получить ответ.

Я сделал тестовую страницу post с кодом
echo 'Работает';

и сделал запрос

$client = new \GuzzleHttp\Client();
// Send an asynchronous request.
$request = new \GuzzleHttp\Psr7\Request('GET', 'https://site.ru/post');
$promise = $client->sendAsync($request)->then(function ($response) {
    echo 'I completed! ' . $response->getBody();
});

$promise->wait();


в ответ я получил только "I completed!" и больше ничего, хотя если перейти на страницу https://site.ru/post, то печает "Работает"

В чем ошибка у меня ?
  • Вопрос задан
  • 1311 просмотров
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

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

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