我只使用Laravel的Request
用于POST
方法。在文档中,所有示例都使用POST
方法,但该类确实提供了一种检查使用哪个HTTP谓词的方法。
如果需要验证查询,路径或授权用户,如果方法为Request
,建议使用GET
吗?如果我使用GET
方法的请求(特别是授权用户),那么使用auth
中间件会有什么意义?
答案 0 :(得分:1)
我相信你将两种不同的术语混合在一起。
首先,您不得使用GET方法授权任何人。这完全违反了法律......(除非你真的想篡改你的用户的隐私等。)
其次,使用POST和GET方法只是您的决定。对于诸如验证用户或者说付款等目的,您必须发出POST请求,但出于搜索,分页或验证方式等目的,必须首选GET方法。
使用Laravel的Route方法,您可以将任意数量的参数传递给函数,而根本不使用GET方法。
简单地说,使用其中任何一个完全是你的电话。
最后,Auth Middleware用于检查正在访问该页面的用户是否激活了会话。如果您登录某人,则调用Laravel的auth()->login()
方法,该方法为该特定用户创建会话,从而可以通过auth()->user()
获取该用户的任何其他视图/方法的信息,只要他/她已登录。如果需要,您可以制作自己的中间件,并从GET请求中检查用户的电子邮件和密码是否有效,您可以做得很好。但话说回来,就像我说的那样,这不应该发生......让我们不要混淆事情。
我希望我的观点清晰明确并正确回答了你的问题。既然您没有真正解释过使用示例,我觉得这是您真正感到困惑的地方。如果您有任何疑问,请评论。 :)
答案 1 :(得分:0)
如果要检查GET请求的权限,可以在路由中使用中间件。
您可以根据需要创建许多中间件
示例:
Route :: get('admin / profile',function(){ // }) - >中间件( 'AUTH');