加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 为什么Response.BufferOutput = False,不工作?

发布时间:2020-12-16 07:13:40 所属栏目:asp.Net 来源:网络整理
导读:这个问题从 on a different board开始,但是 Dave Ward,非常迅速和乐于助人也在这里,所以我想在这里拿起希望最后剩下的一块拼图. 基本上,我一直在寻找一种方法来从一个漫长的过程中不断更新网页.我认为AJAX是要走的路,但Dave有a nice article about using Jav
这个问题从 on a different board开始,但是 Dave Ward,非常迅速和乐于助人也在这里,所以我想在这里拿起希望最后剩下的一块拼图.

基本上,我一直在寻找一种方法来从一个漫长的过程中不断更新网页.我认为AJAX是要走的路,但Dave有a nice article about using JavaScript.我将它集成到我的应用程序中,它在我的客户端上工作得很好,但不是我的服务器WebHost4Life.我有另一台服务器@Brinkster,并决定在那里尝试,它的工作.我的客户端,WebHost4Life和Brinkster上的所有代码都是相同的,所以WebHost4Life显然会发生一些事情.

我打算给他们写一封电子邮件或请求技术支持,但我想积极主动,并试图弄清楚他们的结果可能会导致这种差异.我尽我所能用我的代码来关闭缓冲,如Page.Response.BufferOutput = False.他们可以实施哪些服务器设置来导致这种差异?没有他们的帮助,我有什么方法可以自己规避它吗?如果没有,他们需要做什么?

作为参考,我的应用程序的更简单版本的工作版本的链接位于@ http://www.jasoncomedy.com/javascriptfun/javascriptfun.aspx,并且相同的版本不起作用位于@ http://www.tabroom.org/Ajaxfun/Default.aspx.您将注意到在工作版本中,您获得每个步骤的更新,但是在没有的情况下,它会在那里停留很长时间,直到一切都完成,然后立即对客户端进行所有更新……这让我感到难过.

解决方法

嘿,杰森.对不起,你仍然遇到这个问题.

我要做的是设置一个简单的页面,如:

protected void Page_Load(object sender,EventArgs e)
{
  for (int i = 0; i < 10; i++) 
  {
    Response.Write(i + "<br />"); 
    Response.Flush();

    Thread.Sleep(1000);
  }
}

正如我们之前讨论的那样,确保.aspx文件没有除@Page声明之外的任何标记.这有时会触发页面缓冲,而不会发生正常情况.

然后,将技术支持人员指向该文件并描述所需的行为(10次更新,每秒1次).我发现给他们一个简单的测试用例对于解决这些问题还有很长的路要走.

绝对让我们知道它最终会是什么.我猜是某种内联缓存或反向代理,但我很好奇.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读