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

启动 Google Chrome 浏览器后首次尝试登录后,Laravel 重定向到仪表板(或任何其他页面)时出现问题。每个人似乎都遇到这个问题,但我们尚未找到解决方案或问题的根本原因。

没有错误消息,页面只是不断加载直到无限。如果我重新加载登录页面,我会发现用户实际上已通过身份验证,并且我会被重定向到正确的页面。

我正在使用 PHP 7.3.11 在 XAMPP 上运行我的网站

有人找到修复方法了吗?

这是我的 LoginController 代码,我只添加了redirectTo()方法:

<?php


namespace 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');

    }

}


皈依舞
浏览 166回答 2
2回答

慕容森

这只是 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);});

BIG阳

我对这个主题进行了大量的研究和测试,但我没有得到任何好的结果,但我明白这个问题可能是由于 chrome 或任何浏览器混淆会话名称引起的,所以我更改了会话名称config/session.php通过向 cookie 添加随机字符串我的问题得到解决。我的旧代码'cookie' => env(&nbsp; &nbsp; &nbsp; &nbsp; 'SESSION_COOKIE',&nbsp; &nbsp; &nbsp; &nbsp; Str::slug(env('APP_NAME', 'laravel'), '_').'_session'&nbsp; &nbsp; ),我的新代码'cookie' => env(&nbsp; &nbsp; &nbsp; &nbsp; 'SESSION_COOKIE',&nbsp; &nbsp; &nbsp; &nbsp; Str::slug(env('APP_NAME', 'laravel'), '_').'_newsession'&nbsp; &nbsp; ),
打开App,查看更多内容
随时随地看视频慕课网APP