TGViewer
Заметки разработчика Заметки разработчика @dev_notes_ru · 458 subscribers
Post #1590 307
Laravel 12.6: Новый метод `requestException()` для удобной обработки ошибок HTTP-тестов

Laravel 12.6 представляет метод requestException() — более простой способ создания экземпляров RequestException при тестировании работы HTTP-клиента. Теперь можно эмулировать ошибочные ответы сервера чище и лаконичнее.

🔧 Как это работало раньше:

use Illuminate\Http\Client\RequestException;
use Illuminate\Http\Client\Response;

$exception = new RequestException(
new Response(
Http::response(['error' => 'invalid_token'], 401)
)
);


✅ Теперь с `requestException()`:

use Illuminate\Support\Facades\Http;

$exception = Http::requestException(['error' => 'invalid_token'], 401);


Нужны кастомные заголовки? Просто передайте их:

$exception = Http::requestException(
['message' => 'Too many requests'],
429,
['X-RateLimit-Reset' => '30']
);


✨ Почему это удобно:

- Меньше шаблонного кода в тестах
- Лучшая читаемость и понятность
- Упрощает поддержку и рефакторинг

📌 Метод requestException() делает HTTP-тесты чище, быстрее и выразительнее.

📱 @dev_notes_ru

#Laravel #Laravel12
More from @dev_notes_ru
  1. Apr 27, 2026Уникальный индекс при мягком удалении: решаем проблему дубликатов При использовании мягког…
  2. Apr 23, 2026Статические переменные в PHP: использование static внутри функций По данным исследования E…
  3. Apr 21, 2026Валидация массивов в Laravel без N+1: Form Request как построитель контекста Применение пр…
  4. Apr 13, 2026JSON в браузере: import или fetch — руководство по выбору Спойлер: import из JSON — это не…
  5. Apr 6, 2026Проксирование fetch() в серверном JavaScript Стандарт Fetch не специфицирует проксирование…
  6. Apr 2, 2026Taskfile: Когда пора отказаться от Makefile (а когда — нет) Makefile — инструмент с почти…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →