首页 > 解决方案 > Laravel:门和政策与正常功能

问题描述

我这样做是为了测试用户是否可以访问资源:

  1. 我在“全局”服务中创建了一个函数:

     class IsAuthorizedToRessource{
    
         public function isAuthorizedToUser($connectedUserId, $userId){
             // return true or false
         }
     }
    
  2. 在我的控制器中,我将此服务称为:

     protected $isAuthorizedToRessource;
    
     public function __construct()
     {
         $this->isAuthorizedToRessource = new IsAuthorizedToRessource();
     }
    
     public function show(Request $request,$id)
     {
    
         if (! $this->isAuthorizedToRessource->isAuthorizedToUser(Auth::user()->id, $id)){
             return response()->json("not authorized to this ressource", 403);
         }
    
         //....
     }
    

一切运行良好。但是我在Laravel 文档中看到有“门”和“策略”。尽管有文档,但我不理解这些概念。而且我尝试了很多事情都没有成功。

我的问题:我目前的技术是否可持续?还是我应该努力使用这些技术“门”和“策略”?

我该如何使用这些技术?(我指定:我不使用模型 - 我看到有一个“有”和一个“没有”模型技术)。

标签: laravel

解决方案


推荐阅读