如何监听到render(“页面地址”)的错误信息?
错误信息主要有两点:
render(“页面地址”)报 File not found,也就是文件找不到。
渲染成功后,在页面中使用了模板引擎出现的报错。
关于这两点报错怎么监听到呢?(只有监听到才能把错误信息返回前台提示用户相应的信息)求大佬指教一下
项目:JFinal
如何监听到render(“页面地址”)的错误信息?
错误信息主要有两点:
render(“页面地址”)报 File not found,也就是文件找不到。
渲染成功后,在页面中使用了模板引擎出现的报错。
关于这两点报错怎么监听到呢?(只有监听到才能把错误信息返回前台提示用户相应的信息)求大佬指教一下
不建议将这类信息响应到客户端,攻击者可以利用这个功能有针对性攻击,在出异常时响应 500 页面、404 页面即可
如果一定要显示这类异常,做一个全局拦截器即可,大致代码:
try {
inv.invoke();
} catch( Exception e) {
inv.getController().setAttr("errorMsg", e.getMessage());
inv.getController().render("error.html");
}
如果你是希望将错误输出为 json ,可以这样:
inv.getController().renderJson("errorMsg", e.getMessage());