Пакет Laravel ShareLink дозволяє створювати, керувати та забезпечувати безпечні тимчасові посилання для файлів, маршрутів і моделей. За його допомогою ви можете легко ділитися матеріалами, встановлюючи кастомізовані терміни дії та обмеження на кількість переходів, а також отримувати API для управління поділом, наприклад, продовжувати термін дії вже існуючих посилань. Ось простий приклад з документації пакета:
use Grazulex\ShareLink\Facades\ShareLink;
// Поділитися файлом з обмеженим терміном дії
$link = ShareLink::create('/path/to/document.pdf')
->expiresIn(60) // 60 хвилин
->maxClicks(5)
->withPassword('secret123')
->generate();
echo $link->url; // https://yourapp.com/share/abc123xyz
Цей пакет також має безліч розширених можливостей, таких як обмін маршрутами, моделями Eloquent або встановлення IP-обмежень для посилань:
$link = ShareLink::create('/secure/document.pdf')
->expiresIn(60)
->burnAfterReading() // Знищення після першого доступу
->metadata([
'allowed_ips' => ['192.168.1.0/24', '10.0.0.1'],
'denied_ips' => ['192.168.1.100']
])
->generate();
Пакет також забезпечує CLI для генерації посилань, якщо вам зручніше створювати їх з командного рядка, ніж через код:
$ php artisan sharelink:list --active
$ php artisan sharelink:create /reports/quarterly.pdf \
--expires=72 \
--max-clicks=10 \
--password=Q4Report2024
💻 Дізнайтеся більше на GitHub: Grazulex/laravel-sharelink