我想使用登录表单和laravel auth对普通用户(users-table
)进行身份验证。
我还想通过以下API请求对学生(students-table
)进行身份验证:
mylaravelsite.com/?studentkey=XXXXXXXXXXXXXXXXXX&studentname=YYYYY
我该怎么做?我认为使用中间件?
我如何使用Auth
类来检查登录的人是user
还是student
或guest
?
答案 0 :(得分:1)
我喜欢通过以下方式构建应用程序:
一条具有单一目的的路径,即一条路径用于认证用户,另一条路径用于认证学生
在执行ANY操作之前验证中间件上的数据
现在您的问题:
如果确实需要,您可以创建链接到同一身份验证方法的不同路由,并为每个要“运行”运行类型的中间件创建中间件,该中间件将要使用Auth的类
auth()->getProvider()->setModel(App\Student::class);
还有其他方法可以执行此操作,具体取决于您希望进行身份验证的方式。如果您需要更详细的说明,请给我们一个方案进行工作:
注意:您正在通过一条特定路径的HTTP请求对用户进行身份验证,该路径与示例链接相同,不同之处在于您提供的是HTTPGET示例,并且默认为POST on authentication(验证时为POST)