laravel - Laravel abort() 在 try and catch 中不起作用
问题描述
abort(403); <-- works fine, will display laravel abort page
try{
$rows = DB::.......
if ( !$Rows ) {
abort(403);<-- this will become exception
} else {
}
} catch (Exception $e) {
}
当用户请求时我有一个页面,如果没有行我想使用 laravel abort(); 终止页面。
但是我使用 try catch 包装我的代码,它会变成捕获错误并导致 laravel abort() 无法正常工作。
任何人如何解决这个问题?
解决方案
试试这个代码
try{
abort(403);
} catch (\Exception $e) {
if($e->getStatusCode()==403)
abort(403);
}
推荐阅读
- javascript - 未捕获的类型错误:无法读取未定义的属性“ReactDebugCurrentFrame”
- docker - Docker swarm leave --force - 超出上下文截止日期
- kubernetes - Prometheus 警报规则:将表达式中的指标与标签中的值进行比较
- repository - 带有 CQRS 的 DDD 中的通用存储库模式,有意义吗?
- javascript - Flatlist 不会显示来自 json 的图像(React Native)
- java - 忽略可选的@Query 参数
- spring-boot - 为什么我在使用 IgniteRepository 的 deleteAll 方法时遇到问题?
- adobe-analytics - Adobe Analytics 中的子域跟踪
- html - css 网格创建具有自动填充功能的空列
- c# - 添加 Outlook 日历条目时无法设置开始和结束时间