Laravel - 访客用户门

Guest Guest Gates功能是2018年9月发布的最新5.7版本的附加功能.此功能用于启动特定用户的授权过程.

在Laravel 5.6中,有一个过程,它用于返回 false 未经身份验证的用户.在Laravel 5.7中,我们可以允许访客使用指定控制器中的特定可空类型提示进行授权检查,如下所示 :

<?php
Gate::define('view-post', function (?User $user) {
  // Guests
});

代码说明

使用可空类型提示$ user变量将guest用户传递给gate时,它将为null.然后,您可以决定授权操作.如果您允许可空类型并返回true,那么访客将拥有授权.如果你不使用可空的类型提示,客人将自动获得Laravel 5.7的403响应,显示在下面和下面;

可空类型提示

403和404错误之间的区别在于,当用户尝试访问未知资源或URL时显示404,并且上述快照中提到403错误如果未经授权的用户访问网站,则会显示.