Laravel - bramy użytkownika gościa
Funkcja Guest User Gates jest dodatkiem do najnowszej wersji 5.7 wydanej we wrześniu 2018 r. Ta funkcja służy do inicjowania procesu autoryzacji dla określonych użytkowników.
W Laravel 5.6 istniała procedura, w której kiedyś powracał falsedla nieuwierzytelnionych użytkowników. W Laravel 5.7 możemy pozwolić gościom przejść kontrolę autoryzacji za pomocą określonegonullable podpowiedź typu w określonym kontrolerze, jak podano poniżej -
<?php
Gate::define('view-post', function (?User $user) {
// Guests
});
Wyjaśnienie Kodeksu
Korzystając z nullablewskazówka dotycząca typu zmienna $ user będzie miała wartość null, gdy użytkownik-gość zostanie przekazany do bramy. Możesz wtedy podjąć decyzje dotyczące autoryzacji akcji. Jeśli zezwolisz na typy dopuszczające wartość null i zwrócisz wartość true, gość będzie miał autoryzację. Jeśli nie użyjesz podpowiedzi typu dopuszczającego wartość null, goście automatycznie otrzymają odpowiedź 403 dla Laravel 5.7, która jest wyświetlana poniżej -
Różnica między błędem 403 a 404 polega na tym, że błąd 404 jest wyświetlany, gdy użytkownik próbuje uzyskać dostęp do nieznanego zasobu lub adresu URL, a błąd 403, jak wspomniano w powyższej migawce, jest wyświetlany, gdy nieautoryzowany użytkownik uzyskuje dostęp do witryny internetowej.