如果找不到访问令牌,Laravel中间件的方法不同

时间:2018-02-24 08:07:42

标签: laravel middleware laravel-passport

我是Laravel护照的新手。我想要实现的是能够验证用户是否传入了访问令牌。

我想在找到访问令牌时调用@index路由, 没有找到访问令牌时调用@indexTest路由。

我是否必须为此案例创建自定义中间件? 感谢。

在api.php中



/**
 * Category
 */
Route::resource('categoriesbranches', 'Category\CategoryBranchController@index', ['only' => ['index']])->middleware('client.credentials');
Route::resource('categoriesbranches', 'Category\CategoryBranchController@indexTest');




在CategoryBranchController.php中



    // public function __construct()
    // {
    //     $this->middleware('client.credentials')->only(['index']);
    // }

    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        //different action
    }

    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function indexTest()
    {
        //different action
    }




2 个答案:

答案 0 :(得分:1)

是的,您需要创建一个中间件并检查访问令牌,然后将呼叫重定向到您想要的位置,如果它只有$next($request)

的访问令牌

答案 1 :(得分:0)

您可以创建一个中间件并添加一个中间件之前的方法,以便在任何路由之前检查该请求是否具有令牌。 https://lumen.laravel.com/docs/5.6/middleware