Я пытаюсь использовать бассейн Гузл в приложении Symfony 2. Я думаю использовать его, потому что его способность отправлять одновременный запрос сразу.Guzzle Pool in Symfony 2 - Работа с будущим
Однако, поскольку его асинхронный характер, я не уверен, как использовать его в качестве службы в Symfony 2. Так как возврат не всегда возможен.
Например, скажем, у меня есть служба под названием Foo в Symfony, у которой есть метод, подобный этому, какой-то.
function test()
{
$request = $client->createRequest('GET', 'http://lt/?n=0', ['future' => true]);
$client->send($request)->then(function ($response) {
return "\n".$response->getBody();
});
}
Теперь я вызываю эту услугу следующим образом.
$service = $this->get('foo');
$result = $service->test();
echo $result;// does not work :(echoes out null
Есть ли способ обойти эту проблему. Я действительно хочу использовать Future, так как мне нужна функция async.
Есть ли '$ response' метод' getBody() '? Пробовали ли вы 'var_dump()' ваш '$ response'? – chapay
Да, я пробовал это, но это не принесло бы пользы. Так как к тому времени ответ не готов. – nicholasnet
Я имел в виду 'var_dump()' он как раз перед 'return '\ n". $ Response-> getBody(); ' – chapay