它被成功保护,当用户尝试键入/ dasboard到URL时,它将重定向回登录页面。但问题是,即使我输入正确的电子邮件和密码,我也无法访问我的仪表板..
这是我的userController.php文件
<?php
namespace App\Http\Controllers;
use App\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class userController extends Controller
{
public function getDashBoard()
{
return view('dashboard');
}
public function login(Request $request)
{
$this->validate($request, [
'email'=> 'required',
'password'=> 'required'
]);
if(Auth::attempt(['email'=> $request['email'], 'password'=> $request['password']])){
return redirect()->route('dashboard');
}
return redirect()->back();
}
}
这是我的routes.php文件
Route::group(['middleware' => ['web']], function () {
Route::get('/', function() {
return view('login');
})->name('home');
Route::get('/dashboard', [
'uses'=> 'userController@getDashBoard',
'as'=> 'dashboard'
'middleware' => 'auth'
]);
});
和我的Authenticate.php文件
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\Auth;
class Authenticate
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @param string|null $guard
* @return mixed
*/
public function handle($request, Closure $next, $guard = null)
{
if (Auth::guard($guard)->guest()) {
if ($request->ajax() || $request->wantsJson()) {
return response('Unauthorized.', 401);
} else {
return redirect()->route('home');
}
}
return $next($request);
}
}
我需要帮助。我是这个laravel 5.2框架的新手。如果你编辑我的代码以便我能理解并知道我的错误,那就更好了。
感谢您的理解。这里学习速度慢......
答案 0 :(得分:0)
根据提供的代码,UserController中似乎没有getDashBoard方法。您的“信息中心”路线指向一个不存在的方法。
答案 1 :(得分:0)
我不知道为什么,但是当我关掉机器睡觉时。然后再次打开机器。当我运行我的应用程序时,突然解决了......嗯......