繁体   English   中英

Laravel 5.3:在自定义错误页面上使用auth / middleware

[英]Laravel 5.3: Use auth/middleware on custom error page

问题

当显示HTTP错误页面(404,500等)时,我想保留当前项目的标准设计,包括页眉和页脚。 我的项目还包括一个注册系统。 当用户登录并收到错误消息时,他将被重定向到相应的错误页面,但Laravel 无法识别用户已登录 那是因为自定义错误页面(位于resources/views/errors/{code}.blade.php不会通过正常的Web中间件运行(出于某些原因)。

此行为已经报告了几次,但没有提供足够的答案。 一个hacky解决方案是将StartSession中间件设置为应用于每个请求,但在我的情况下这还不够。

如何在自定义错误页面上使用Auth / Session中间件?

解决方案不适合

  • 我不想将StartSession中间件(或任何其他)添加到每个请求

相关问题和链接

在围绕我打开的github问题的讨论中,这里有两个最佳实践:

  1. StartSession中间件添加到全局中间件列表是一个很好的实践,只要您的应用程序没有API或类似
  2. 在第二种情况下,您可以使用jQuery和AJAX调用查询受会话影响的所需前端元素(例如,登录/注册或配置文件按钮)。 因此,您正在调用应用中间件的路由,从而获得正确的元素。 在我链接的GitHub问题中可以找到一个很好的例子。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM