---
title: "Fasáda RefreshTokens — Refresh Tokens for Laravel | Roundly"
description: "Celá fasáda RefreshTokens na jednom mieste — vydanie, uplatnenie, rotácia, odvolanie a čistenie plus objekty sessions() a session()."
url: https://roundly-consulting.com/sk/open-source/navody/refresh-tokens-for-laravel/fasada
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[Refresh Tokens for Laravel](https://roundly-consulting.com/sk/open-source/navody/refresh-tokens-for-laravel.md)

# Fasáda RefreshTokens

RoundlyConsulting\\RefreshTokens\\Facades\\RefreshTokens (alias RefreshTokens) je odporúčaný vstupný bod. Metódy pre tokeny sú priamo na fasáde; všetko o reláciách jedného vlastníka visí na sessions($owner) a jeden riadok, ktorý už máte, na session($row):

```php
use RoundlyConsulting\RefreshTokens\Facades\RefreshTokens;

RefreshTokens::for($user)->fromRequest($request)->linkedTo($jti)->issue(); // fluent issue
RefreshTokens::issue($user, new IssueContext(/* … */));                    // the same, as a DTO
RefreshTokens::redeem($plain, ownerType: $morph);   // ?RedemptionResult
RefreshTokens::rotate($plain, new RotationContext(/* … */)); // ?RotationResult
RefreshTokens::revoke($plain);                      // bool — logout with the token in hand
RefreshTokens::prune(days: 7);                      // int — force-delete dead rows

RefreshTokens::sessions($user)->all();              // active sessions, newest first
RefreshTokens::sessions($user)->find($familyId);    // ?RefreshToken
RefreshTokens::sessions($user)->revoke($familyId, RevocationReason::Logout); // bool
RefreshTokens::sessions($user)->revokeOthers($currentJti);      // int
RefreshTokens::sessions($user)->revokeAllExcept($keepFamilyId); // int
RefreshTokens::sessions($user)->revokeAll();                    // int

RefreshTokens::session($row)->enrich($device, $location); // row model or its key
RefreshTokens::session($row)->revoke(RevocationReason::Manual); // bool
```

## Prehľad metód

| Metóda | Vracia | Čo robí |
| --- | --- | --- |
| `for($owner)` | `PendingIssue` | Plynulý builder vydania; ->issue() zavolá issue(). |
| `issue($owner, IssueContext $context)` | `NewRefreshToken` | Vydá token; plaintext dostanete raz. |
| `redeem($plain, ?string $ownerType = null)` | `?RedemptionResult` | Atomicky uplatní token; každé zlyhanie je null. |
| `rotate($plain, ?RotationContext $context = null)` | `?RotationResult` | Uplatnenie a vydanie náhrady v tej istej rodine jedným volaním. |
| `revoke($plain, $reason = Logout)` | `bool` | Odhlásenie s tokenom v ruke; true, ak ukončil živú reláciu. Použitý token ukončí reláciu, do ktorej bol rotovaný. |
| `sessions($owner)` | `OwnerSessions` | Relácie jedného vlastníka — výpis, vyhľadanie a odvolanie podľa ID rodiny. |
| `session($row)` | `SessionHandle` | Jeden riadok (model alebo jeho kľúč) — obohatenie alebo odvolanie. |
| `prune(?int $days = null)` | `int` | Natrvalo zmaže mŕtve riadky; vráti ich počet. |
| `fake()` | `RefreshTokensFake` | Nasadí zaznamenávajúci fake — pozrite Testovanie. |

## Objekty sessions() a session()

| Metóda | Vracia | Poznámka |
| --- | --- | --- |
| `sessions($owner)->all()` | `Collection<RefreshToken>` | Aktívne riadky, od najnovšieho. |
| `sessions($owner)->find($familyId)` | `?RefreshToken` | Aktívny riadok danej rodiny; null pri chybnom ID alebo rodine iného vlastníka. |
| `sessions($owner)->revoke($familyId, $reason)` | `bool` | Odvolá všetky aktívne riadky rodiny (predvolene Logout); false, ak nebolo nič aktívne. |
| `sessions($owner)->revokeAllExcept($keepFamilyId, $reason)` | `int` | Ponechá jednu reláciu podľa ID rodiny (predvolene LogoutAll); null alebo neznáme ID odvolá všetko. |
| `sessions($owner)->revokeOthers($currentAccessReference, $reason)` | `int` | Ponechá reláciu s daným odkazom na prístupový token (predvolene LogoutAll); null odvolá všetko. |
| `sessions($owner)->revokeAll($reason)` | `int` | Odvolá všetky relácie (predvolene LogoutAll). |
| `session($row)->enrich($device, $location)` | `void` | Zapíše údaje o zariadení a polohe dodané aplikáciou do jedného riadku (model alebo jeho kľúč). |
| `session($row)->revoke($reason)` | `bool` | Odvolá jeden riadok, ktorý máte k dispozícii (predvolene Manual). |

sessions($owner) pracuje len v rozsahu vlastníka — rodina iného vlastníka, aj vlastníka iného typu s rovnakým id, je pre neho neznáma. session() prijíma model RefreshToken, celé číslo alebo reťazcový kľúč; neznámy kľúč vyhodí SessionNotFoundException. Metódy traitu HasRefreshTokens delegujú na toho istého manažéra — pozrite Relácie.

## Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

[Ďalšie spôsoby podpory vrátane kryptomien](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/refresh-tokens-for-laravel.md)
