Как изменить тайм -аут по умолчанию клиента HTTP в LaravelPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как изменить тайм -аут по умолчанию клиента HTTP в Laravel

Сообщение Anonymous »

В Laravel Default Timeout для запросов клиентов HTTP составляет 30 секунд. Но я хочу изменить его на 5 секунд. Я уже знаю, что это возможно, позвонив в Timeout (5) функция в экземпляре http (pendingRequest):

Код: Выделить всё

Http::timeout(5)->get('www.example.com');
< /code>
Но я не хочу звонить в него каждый раз, когда получаю доступ к HTTP Facade. Я хочу, чтобы это было поведение по умолчанию. Что я пробовал до сих пор: < /p>
use Illuminate\Http\Client\Factory;

class AppServiceProvider extends ServiceProvider

public function register()

$this->app->bind(Factory::class, static fn () => (new Factory)->withOptions(['timeout' => 5]));
}
< /code>
Он делал то, что мне нужно, но я столкнулся с проблемой, когда я звонил в HTTP -клиент более одного раза в одном запросе API.$response1 = Http::baseUrl('www.storageservice.com')->attach('document', 'file_contents', 'document.pdf')->post('/upload');
$response2 = Http::baseUrl('www.numbergenerator.com')
// ->post('/generate/number');
Если я отлаживаю $ response2 Я вижу файл документа , прикрепленный к его телу. Это означает, что я использую точный же экземпляр HTTP с первым вызовом API для второго. Call New () Метод для создания нового экземпляра, например:

Код: Выделить всё

$response1 = Http::new()->baseUrl('www.storageservice.com')->attach('document', 'file_contents', 'document.pdf')->post('/upload');
$response2 = Http::new()->baseUrl('www.numbergenerator.com')
// ->post('/generate/number');
< /code>
Но это кажется немного обратной инженерии. Если мне нужно вызывать функцию каждый раз, так что это будет тайм -аут 
, конечно.
Любая мысль?>

Подробнее здесь: https://stackoverflow.com/questions/762 ... in-laravel
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»