NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky

Každá výnimka dedí z abstraktnej TwoFactorException, takže môžete najprv ošetriť konkrétne prípady a nakoniec zachytiť celú rodinu:

use RoundlyConsulting\TwoFactor\Exceptions\InvalidTwoFactorCodeException;
use RoundlyConsulting\TwoFactor\Exceptions\TwoFactorException;
use RoundlyConsulting\TwoFactor\Exceptions\TwoFactorNotPendingException;
use RoundlyConsulting\TwoFactor\Facades\TwoFactor;

try {
    TwoFactor::for($user)->confirm($request->string('code')->toString());
} catch (InvalidTwoFactorCodeException $e) {
    // wrong code — ask again
} catch (TwoFactorNotPendingException $e) {
    // nothing pending, or 2FA is already enabled
} catch (TwoFactorException $e) {
    // any other package failure
}
VýnimkaKedy nastane
TwoFactorExceptionAbstraktná základná trieda (RuntimeException) — zachytí celú rodinu výnimiek.
InvalidTwoFactorCodeExceptionconfirm() dostane nesprávny kód.
TwoFactorNotPendingExceptionPotvrdenie bez čakajúcej aktivácie — aj vtedy, keď je 2FA už zapnuté.
TwoFactorAlreadyEnabledExceptionSpustenie aktivácie pre používateľa, ktorý už má 2FA zapnuté.
TwoFactorRateLimitedExceptionVstavaný limiter zablokoval overenie; nesie secondsUntilAvailable.
InvalidTwoFactorConfigExceptionNeznáma hodnota algorithm, recovery_codes.storage alebo replay_guard; digits, period, window, secret_length, attempts.*, recovery_codes.count či cache.ttl mimo povoleného rozsahu alebo nie celé číslo; attempts, ktoré nie je poľom ani null; issuer či cache store, ktoré nie sú reťazcom; alebo názov tabuľky či stĺpca, ktorý nie je reťazcom.
InvalidBase32ExceptionTajný kľúč nie je platný base32 a nedá sa dekódovať.
TwoFactorAssertionFailedExceptionZlyhala asercia TwoFactorFake.

Výnimky samotného crypto-for-laravel sa nikdy nedostanú von: chyba dekódovania base32 sa zmení na InvalidBase32Exception a chyba parametra či dĺžky OTP na InvalidTwoFactorConfigException.

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

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

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.