如何解决请求超时的HttpException异常
2015-06-22 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:117538
获赞数:517180
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。
向TA提问 私信TA
关注
展开全部
这种问题基本上发生在当ASP.NET的服务器端执行请求的时间超过所允许的最大时间之时。
最大超时时间可以在配置文件的httpRuntime元素的executionTimeout属性中设置。(在.Net 2.0中,默认值是110秒
如何重现
===============
创建一个ASPX页面,命名为sleep.aspx。它将睡眠20秒:
<%@ Page Language="C#" %>
<%@ import Namespace="System.Diagnostics" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
DateTime time = DateTime.Now;
Response.Write(String.Format("Time: {0}:{1}:{2}", time.Hour, time.Minute, time.Second) +
"\tCurrent process: " + Process.GetCurrentProcess().Id.ToString());
Response.Write("<BR>");
Response.Write(String.Format("This application is running in {0}", System.Environment.Version.ToString()));
System.Threading.Thread.Sleep(20000);
}
</script>
<html>
<head>
<title>ASP.NET Simple Page</title>
</head>
<body bgcolor="#FFFFFF">
<p><asp:label id="Message" runat="server" /></p>
</body>
</html>
创建一个web.config文件,将其放在与sleep.aspx同一目录下。在此文件中设置最大超时时间为5秒。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.web>
<httpRuntime executionTimeout="5"/>
</system.web>
</configuration>
使用你的浏览器访问sleep.aspx,过一会儿你就将收到错误信息:“[HttpException (0x80004005): Request timed out.]”。相关的警告信息也将出现在事件日志里。
最大超时时间可以在配置文件的httpRuntime元素的executionTimeout属性中设置。(在.Net 2.0中,默认值是110秒
如何重现
===============
创建一个ASPX页面,命名为sleep.aspx。它将睡眠20秒:
<%@ Page Language="C#" %>
<%@ import Namespace="System.Diagnostics" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
DateTime time = DateTime.Now;
Response.Write(String.Format("Time: {0}:{1}:{2}", time.Hour, time.Minute, time.Second) +
"\tCurrent process: " + Process.GetCurrentProcess().Id.ToString());
Response.Write("<BR>");
Response.Write(String.Format("This application is running in {0}", System.Environment.Version.ToString()));
System.Threading.Thread.Sleep(20000);
}
</script>
<html>
<head>
<title>ASP.NET Simple Page</title>
</head>
<body bgcolor="#FFFFFF">
<p><asp:label id="Message" runat="server" /></p>
</body>
</html>
创建一个web.config文件,将其放在与sleep.aspx同一目录下。在此文件中设置最大超时时间为5秒。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.web>
<httpRuntime executionTimeout="5"/>
</system.web>
</configuration>
使用你的浏览器访问sleep.aspx,过一会儿你就将收到错误信息:“[HttpException (0x80004005): Request timed out.]”。相关的警告信息也将出现在事件日志里。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询