首页 > 解决方案 > 第一次点击浏览器“返回”按钮后中间件无法正常工作 Laravel

问题描述

我有一个登录页面,当用户正确输入他们的登录名和密码时,我将他们重定向到仪表板页面。我正在使用 Laravelguest中间件,因此当登录用户尝试进入登录页面时,他们会被重定向到仪表板。一切正常,除非用户登录并被重定向到仪表板,如果他们点击浏览器后退按钮,登录页面仍然显示。它只会在刷新后消失。我该如何解决这个问题?

这是我的路线:

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

    Route::get('/', 'MainController@index');

    Route::get('/loadLogin','MainController@loadLogin');

});

标签: laravel

解决方案


这肯定是因为浏览器缓存了前一页?如果用户试图 POST 或 GET 数据到页面,服务器会将他们重定向到 loadLogin。用户真正看到的唯一东西是他们的浏览器保存的客户端代码,因此刷新修复了它。

JCode 说检查用户是否登录控制器,但控制器不是检查这个的地方。


推荐阅读