Laravel - 访客用户门

  • 简述

    访客用户门功能是 2018 年 9 月发布的最新 5.7 版本的附加功能。此功能用于启动特定用户的授权过程。
    在 Laravel 5.6 中,有一个过程用于返回false对于未经身份验证的用户。在 Laravel 5.7 中,我们可以允许访客使用特定的方法进行授权检查nullable在指定的控制器中键入提示,如下所示 -
    
    <?php
    Gate::define('view-post', function (?User $user) {
       // Guests
    });
    
  • 守则解释

    通过使用nullable类型提示当访客用户被传递到门时,$user 变量将为空。然后您可以做出有关授权该操作的决定。如果您允许可为 null 的类型并返回 true,则访客将拥有授权。如果您不使用可空类型提示,客人将自动获得 Laravel 5.7 的 403 响应
    403 和 404 错误之间的区别在于,当用户尝试访问未知资源或 URL 时会显示 404,而如果未经授权的用户访问网站,则会显示上面快照中提到的 403 错误。