为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel 7 在 chrome 上首次登录后出现重定向问题

Laravel 7 在 chrome 上首次登录后出现重定向问题

PHP
皈依舞 2023-08-26 19:15:44
启动 Google Chrome 浏览器后首次尝试登录后,Laravel 重定向到仪表板(或任何其他页面)时出现问题。每个人似乎都遇到这个问题,但我们尚未找到解决方案或问题的根本原因。没有错误消息,页面只是不断加载直到无限。如果我重新加载登录页面,我会发现用户实际上已通过身份验证,并且我会被重定向到正确的页面。我正在使用 PHP 7.3.11 在 XAMPP 上运行我的网站有人找到修复方法了吗?这是我的 LoginController 代码,我只添加了redirectTo()方法:<?phpnamespace App\Http\Controllers\Auth;use App\Http\Controllers\Controller;use App\Providers\RouteServiceProvider;use Illuminate\Foundation\Auth\AuthenticatesUsers;class LoginController extends Controller{    /*    |--------------------------------------------------------------------------    | Login Controller    |--------------------------------------------------------------------------    |    | This controller handles authenticating users for the application and    | redirecting them to your home screen. The controller uses a trait    | to conveniently provide its functionality to your applications.    |    */    use AuthenticatesUsers;    /**     * Where to redirect users after login.     *     * @var string     */    protected $redirectTo = RouteServiceProvider::HOME;    /**     * Create a new controller instance.     *     * @return void     */    public function __construct()    {        $this->middleware('guest')->except('logout');    }    public function redirectTo()    {        if (session('url.intended')) {            return redirect(session('url.intended'));        }        return route('dashboard.index');    }}
查看完整描述

2 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

这只是 Chrome 中的一个错误。我遇到过同样的问题。将 Chrome 更新到版本 85.0.4183.83,它应该可以工作。

作为后备功能,我在 login.blade.php 中添加了小型普通 JavaScript,它会在 5 秒后重定向我。因为您实际上已登录,但重定向卡住了......

var form = document.querySelector('.login-form');


form.addEventListener("submit", function(evt) {

    setTimeout(() => {

        window.location.replace("/home");

    }, 5000);

});


查看完整回答
反对 回复 2023-08-26
?
BIG阳

TA贡献1859条经验 获得超6个赞

我对这个主题进行了大量的研究和测试,但我没有得到任何好的结果,但我明白这个问题可能是由于 chrome 或任何浏览器混淆会话名称引起的,所以我更改了会话名称config/session.php通过向 cookie 添加随机字符串我的问题得到解决。


我的旧代码


'cookie' => env(

        'SESSION_COOKIE',

        Str::slug(env('APP_NAME', 'laravel'), '_').'_session'

    ),

我的新代码


'cookie' => env(

        'SESSION_COOKIE',

        Str::slug(env('APP_NAME', 'laravel'), '_').'_newsession'

    ),


查看完整回答
反对 回复 2023-08-26
  • 2 回答
  • 0 关注
  • 165 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信