Web项目中创建简单的错误处理页面_html/css_WEB-ITnose
程序员文章站
2022-06-11 19:11:08
...
当应用程序出现错误的时候,如果没有做错误页面处理的话,会直接输出一些敏感的信息出来,有时候甚至会直接将项目所在的物理路径给显示出来,严重缺乏安全性,并且错误种类繁多,页面风格不一,导致用户体验不好,本文介绍如何在web项目中创建错误页面,从而友好的提示错误信息。
一,创建错误页面error.aspx,前台代码如下(可根据实际需要增加元素):
二,在全局处理文件中的 Application_Error 中加入错误处理的代码,如下:
// 在出现未处理的错误时运行的代码 Exception objErr = Server.GetLastError().GetBaseException(); string sError = "异常页面:" + HttpContext.Current.Request.Url.ToString() + "异常信息:" + objErr.Message + "处理方法:请刷新页面重试或联系系统管理员。"; //清除之前的异常 Server.ClearError(); //这里如果用Session["ProError"]会出错,所以用 Application["AppError"] Application["AppError"] = sError; //这里不能用Response.Redirect System.Web.HttpContext.Current.Response.Redirect(HttpContext.Current.Request.ApplicationPath + "/error.aspx");
三,在错误页面初始化的时候,输出错误信息,如下:
if (!IsPostBack) { if (Application["AppError"] != null) { try { string msg = Application["AppError"].ToString(); msg = msg.Replace("\"", ""); lblMessage1.Text = msg.Substring(0, msg.IndexOf("异常信息")); lblMessage2.Text = msg.Substring(msg.IndexOf("异常信息"), msg.IndexOf("处理方法") - msg.IndexOf("异常信息")); lblMessage3.Text = msg.Substring(msg.LastIndexOf("处理方法")); } catch (Exception ex) { lblMessage1.Text = ex.Message; } } }
以上步骤即可完成错误页面的配置,除此之外,还可通过Web.Config配置错误页面,预览效果如下:
下一篇: 远程连接mysql_MySQL
推荐阅读
-
这个页面的DIV不随滚动条滚动的效果是怎么做到的?谁能帮我解决下?有现成简单的代码更好_html/css_WEB-ITnose
-
Node实现最简单的todo-list页面_html/css_WEB-ITnose
-
Web项目中创建简单的错误处理页面_html/css_WEB-ITnose
-
小试牛刀2:制作一个简单的层次页面_html/css_WEB-ITnose
-
HTML学习笔记实例-创建一个注册页面select两个option出来结果却是四个选项,其中两个空白选项的原因?_html/css_WEB-ITnose
-
新奇!让简单的页面瞬间变酷的图标填充效果_html/css_WEB-ITnose
-
Node实现最简单的todo-list页面_html/css_WEB-ITnose
-
Web项目中创建简单的错误处理页面_html/css_WEB-ITnose
-
做一个多项选择界面,选择一项弹出一个新页面,选择完这一项之后,返回之前的html页面_html/css_WEB-ITnose
-
做了一个简单的静态导航页面_html/css_WEB-ITnose