Laravel 5.5 登录和注册页面显示:页面因不活动而过期。\[TokenMismatchException\]

新手上路,请多包涵

我刚刚使用 laravel 安装程序创建了一个 laravel 5.5 版的新项目。并运行命令“ php artisan make:auth ”。视图和控制器是为用户身份验证生成的。同时运行“ php artisan migrate ”来创建所需的表在数据库中。访问登录页面和注册页面时,填写表格并提交。它显示“由于不活动,该页面已过期。请刷新并重试。”。但刷新页面无济于事。在源代码中看到,导致异常的地方:

 if ($e instanceof ModelNotFoundException) {
        $e = new NotFoundHttpException($e->getMessage(), $e);
    } elseif ($e instanceof AuthorizationException) {
        $e = new AccessDeniedHttpException($e->getMessage());
    } elseif ($e instanceof TokenMismatchException) {
        $e = new HttpException(419, $e->getMessage());
    }

似乎“TokenMismatchException”导致了这个问题。这是什么时候发生的?为什么?我只是创建了这个新项目,没有做任何其他更改。希望你得到了分数。我使用 php 7.1.9(laravel 5.5 需要 php > 7.0.0)。并在开发环境中为项目提供服务:php artisan serve

原文由 brian.shen 发布,翻译遵循 CC BY-SA 4.0 许可协议

回复
阅读 74
2 个回答

我在 localhost:8000 ( php artisan serve ) 上遇到了同样的问题。也许是巧合,但请尝试“ _干净的浏览器_”,而不是您在以前的开发中使用过的。对我来说它奏效了。

问题似乎出在使用以前的 Laravel 版本开发的 cookie 上,在同一个 url 上。

原文由 studiojasper_pl 发布,翻译遵循 CC BY-SA 3.0 许可协议

我想你错过了 csrf 令牌。

不要忘记使用 {!! csrf_field() !!}

原文由 Kokil 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题
宣传栏