【发布时间】:2021-07-29 22:43:51
【问题描述】:
我已经创建了这个登录函数,当输入正确的用户名和密码时它返回登录成功
public function login(Request $request){
if(Auth::user()){
return response()->json(['success'=>'already lodged.',200]);
}else{
$this->validate($request,[
'email' => 'required|email',
'password' => 'required|alphaNum|min:6'
]);
$user_data = array(
'email' => $request->get('email'),
'password' => $request->get('password')
);
if(Auth::attempt($user_data)){
return response()->json(['success'=>'login success.',401]);
}else{
return response()->json(['error'=>'Unauthenticated.',401]);
}
}
}
我必须在 route/api.php 中定义这样的路由
Route::group(['prefix' => 'web'],function (){
Route::get('/reg',function (){
return view('pages.temp.register');
});
Route::get('/login',function (){
return view('pages.temp.login');
})->name('login');
});
Route::get('/userdashboard', 'UserController@index')->middleware('auth');
Route::get('/user/{id}', 'UserController@show')->middleware('auth');
但是当我在另一个控制器或另一个视图中调用 Auth::user() 时,它返回 null 它有什么问题
【问题讨论】:
-
你能在你定义这些控制器调用的地方显示你的路由文件吗
-
Ehmm.. 当用户通过身份验证时,您返回“未授权”(401)...
-
@mrhn 我已经编辑了问题,请看一下