Laravel 5.3 -自定义API保护


Laravel 5.3 - Custom API Guard

我有两个端点:

Route::get('user', function () {
    $data = ...;
    return response()->json($data);
});
Route::get('user-premium', function () {
    $data = ...;
    return response()->json($data);
});

在user-premium中,我需要使用令牌限制访问(但我不想使用jwt或数据库)

我计划使用环境变量,如API_TOKEN=xxx

那么,如何基于env变量创建自定义保护呢

我的目标是请求/api/user-premium/?token=xxx, xxx是环境变量

的值

我想你在找这个

简而言之:

  1. 添加api_token列到您的user
  2. Auth::api中间件包装你的路由
  3. 像这样获取登录用户Auth::guard('api')->user()
  4. 更新App'Http'Middleware'Authenticate以处理$request->wantsJson()