yiisoft/yii2-httpclient

Unable to get status code: referred header information is missing.

dbuhonov opened this issue · 2 comments

What steps will reproduce the problem?

  1. Создать функцию для вызова запроса
    (new Client(['baseUrl' => $url . $path]))
    ->createRequest()
    ->setMethod('POST')
    ->setFormat(Client::FORMAT_JSON)
    ->send();
  2. Сделать вызов функции добавив ее в очередь
  3. Очередь вызвать консольной командой

What's expected?

Ожидается что вернет статус ответа, но при вызове с очередей отсутсвует $headers->has('http-code')
$response->getStatusCode();

What do you get instead?

Ожидаю что вернет null без выброса исключения в функции getStatusCode
Можете рассказать так ли нужно выбрасывать исключение?
Ведь приходится дополнительно оборачивать получение статуса ответа чтобы ошибки не шли в sentry

$statusCode = 200;
if ($response->getHeaders()->has('http-code')) {
$statusCode = $response->getStatusCode();
}

Additional info

Q A
Yii version 2.0.49.3
Yii HTTP Client version 2.0.15
PHP version 7.4
Operating system

Можно пояснить "Сделать вызов функции добавив ее в очередь"?

Спасибо за потраченное время
Все работает ОК, дальше разобрали проблему было на своей стороне