php - 5.5 中未执行的中间件终止函数
问题描述
我有一个用于在数据库中记录请求的中间件。日志最初是在请求进入handle()
方法时创建的。我现在正在尝试添加一种terminate()
将响应状态添加到日志的方法。但是,该terminate()
方法似乎没有被调用。
我在routeMiddleware
in 中注册了它Kernel.php
(句柄函数运行正常)。它也被应用于一组路由,句柄函数正确执行。似乎终止功能不会执行。
这是终止函数:
public function terminate($request, $response)
{
$log = Audit::find(Request::get('AUDIT-LOG-ID'));
$log->status = $response->status();
$log->save();
}
任何帮助将不胜感激!
编辑:
我故意在terminate
函数中添加了会导致服务器错误的错误。但是它们从未被执行并且请求正常通过,我相信这证实了我的预感,即该terminate
功能没有被执行。
解决方案
推荐阅读
- javascript - 数组`lineControl.every()`函数返回未定义
- node.js - 运行我的应用程序时出现 MongoDB Atlas 集群连接错误
- mysql - INSERT 上的 MySQL 触发器无法正常工作
- spring - Oracle 和 H2 数字数据类型不兼容
- c# - 通过 DataTemplateSelector 设置 DataContext
- android - 颤动的蓝色 setNotifyValue 只显示 21 个第一个字符?
- javascript - 为什么相关的帖子小部件只出现在页脚部分,而不出现在侧边栏中?
- php - PHP:类函数在一个文件中有效,但在另一个文件中无效
- excel - Microsoft REST api 如何从从桌面应用程序复制的共享 URL 中获取文档 ID
- excel - 如何在不使用循环激活的情况下在工作表和工作簿之间切换?