【问题标题】:Use laravel Auth::check() in API FormRequest在 API FormRequest 中使用 laravel Auth::check()
【发布时间】:2018-01-14 17:44:44
【问题描述】:

我为我的应用程序创建了一个 API,然后开始在应用程序内部使用它。也就是说,用于显示、编辑等的刀片视图将 ajax 请求发送到在 routes/api.php 中配置的路由。现在我需要在 API 路由表单请求中执行 Auth::check() 但发现它在“api”中间件下不可用。有什么办法挽救我的处境吗?在 API 中查找已登录用户的最简单方法是什么?

编辑: 这是我在 api 表单请求中尝试做的。

public function authorize()
{
    $slot = Slot::find($this->route('slot'));
    // If administrator is logged in all is good.
    // If slot is free its also ok.
    return ( Auth::check() || $slot->isAvailable() );
}

【问题讨论】:

  • Auth::check() 应该在任何地方都可用,你有什么错误吗?

标签: laravel


【解决方案1】:

使用auth middleware

Route::group(['middleware' => 'auth'], function () {

    // Only authenticated users allowed here

});

【讨论】:

  • 对不起,我有点不清楚,也应该允许未经身份验证的用户(只要该插槽是免费的)查看更新的问题。谢谢!
猜你喜欢
  • 2015-04-28
  • 1970-01-01
  • 2016-02-02
  • 2014-11-19
  • 2018-12-19
  • 2016-04-07
  • 2018-09-08
  • 2020-04-20
  • 2016-07-19
相关资源
最近更新 更多