如何在Laravel 5.2中验证RESTful API?

时间:2016-08-24 13:37:06

标签: rest laravel laravel-5.2 laravel-routing

我在Laravel 5.2中创建了RESTful API。每次用户访问AbcController时我都需要进行身份验证。我创建了如下路线:

Route::group(['prefix' => 'user'], function () {
   Route::post('login', 'Auth\AuthController@authenticate');
   Route::post('register', 'UserController@userRegister');
   Route::post('register', 'UserController@userRegister');
});

Route::group(['prefix' => 'abc'], function () {
   Route::get('abclists', 'AbcController@movieLists');
   Route::get('upcoming', 'AbcController@upcomingMovieLists');
});

当用户第一次注册或登录时,我会为会话令牌创建随机的64位字符串。此会话令牌存储在不同的表中。现在我很困惑如何在AbcController中检查用户是否登录。我没有使用任何库。请建议如何重新解决这个问题。

1 个答案:

答案 0 :(得分:1)

最简单的方法是使用中间件。 在handle()方法中,您可以对存储在表中的令牌进行检查。

<?php

namespace App\Http\Middleware;

class AgeMiddleware
{

    public function handle($request)
    {
        if(TOKEN == $request->get('token')
        return $next($request);
    }

}

您可以在此处查看更多信息:Laravel Docs