Версійність API — ключова частина розробки. Але як керувати deprecated, sunset (end-of-life) або beta/preview версіями? Laravel API Route — пакет від Jean-Marc Strauven, який забезпечує повний lifecycle-менеджмент версій API для Laravel.
За замовчуванням використовується версіювання через URI path (наприклад, /v1/, /v2/) — це найпопулярніша стратегія, бо її легко зрозуміти і просто реалізувати.
Щоб позначити нову версію API як поточну stable-версію, використайте метод current() фасаду ApiRoute у файлі routes/api.php:
use Grazulex\ApiRoute\Facades\ApiRoute;
ApiRoute::version('v2', function () {
Route::apiResource('orders', App\Http\Controllers\Api\V2\OrderController::class);
})->current();
А щоб позначити попередні версії як deprecated і встановити плановану дату sunset (end-of-life), використайте методи deprecated() і sunset():
use Grazulex\ApiRoute\Facades\ApiRoute;
ApiRoute::version('v1', function () {
Route::apiResource('orders', App\Http\Controllers\Api\V1\OrderController::class);
})
->deprecated('2025-08-01')
->sunset('2025-12-31');
У відповідь для deprecated-версії автоматично додадуться такі заголовки:
HTTP/1.1 200 OK
X-API-Version: v1
X-API-Version-Status: deprecated
Deprecation: Fri, 01 Aug 2025 00:00:00 GMT
Sunset: Wed, 31 Dec 2025 00:00:00 GMT
Якщо хочете іншу стратегію, а не URI path, змініть конфігурацію в config/apiroute.php і використайте query-параметри, заголовок або Accept header в запитах, наприклад:
GET /api/orders
X-API-Version: 2
GET /api/orders?api_version=2
GET /api/orders
Accept: application/vnd.api.v2+json
Також доступні кілька Artisan-команд, які дозволяють швидко переглянути статус версій API або статистику використання:
php artisan api:status
php artisan api:stats --period=30
Це лише частина можливостей пакета. Детальніше — у full documentation та на сторінці з source code на GitHub.
Нова версія Livewire 4, представленої Келебом Порзіо на Laracon US 2025, обіцяє значні покращення у швидкості та організації компонентів. Які з інноваційних функцій підкорять ваше серце? Читайте далі, щоб дізнатися більше про те, як Livewire 4 полегшить вашу роботу
Вперше у світі Laravel з'являється можливість, яка значно спростить ваше повсякденне програмування завдяки новому пакету Laravel Boost. Читайте статтю, щоб дізнатися, як посилена інтеграція штучного інтелекту може підвищити ефективність вашої роботи та оптимізувати створення проектів у Laravel
Laravel пропонує потужні можливості повнотекстового пошуку за допомогою методів whereFullText та orWhereFullText, що дозволяють здійснювати складні запити до бази даних. Дізнайтеся, як реалізувати ефективний пошук для вашого блогу чи системи управління контентом