【发布时间】:2019-07-03 02:03:38
【问题描述】:
我有关于从数据库返回用户的情况。在我的控制器中,我正在尝试如下:
更新:
注意:为了明确的误解。实际上我以用户身份登录。那部分没问题。但看起来 auth:: 不明白这一点,当我尝试检索用户时。它正在将我重定向到登录的端点...
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Auth;
class UsersController extends Controller
{
public function getUser(){
$users = Auth::user();
dd($users);
}
}
关于api路由:
Route::group(['middleware' => 'auth:api'], function() {
Route::post("logout", "Api\AuthController@logout");
/* User */
Route::get('/user', 'Api\UsersController@getUser');
});
Route::group(["prefix" => "v1"], function(){
/* Auth */
Route::post("login", "Api\AuthController@login")->name("login");
Route::post("register", "Api\AuthController@register");
});
事情就是这样。如果我在中间件:api 之外使用我的 UserController 路由,则端点返回 null。如果在中间件中使用它,它会将我重定向到我的登录端点。因为"->name('login')"
最终我无法返回用户。此外,这就是 config/auth 的样子。
'defaults' => [
'guard' => 'web',
'passwords' => 'users',
],
顺便问一下。我试图将警卫的网络更改为 api,但没有任何改变。
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'passport',
'provider' => 'users',
],
],
有没有人对这种情况有更好的理解。如何使用护照返回用户?我在这里错过了什么吗?
【问题讨论】: