我可以早期使用ASP.NET刷新缓冲区吗?

Ian*_*tle 11 asp.net optimization

从雅虎演示您的网站的最佳实践包括以下建议:

当用户请求页面时,后端服务器可能需要200到500毫秒才能将HTML页面拼接在一起.在此期间,浏览器在等待数据到达时处于空闲状态.在PHP中,您有函数flush().它允许您将部分准备好的HTML响应发送到浏览器,以便浏览器可以在后端忙于HTML页面的其余部分时开始获取组件.这种好处主要出现在繁忙的后端或轻量级前端.

考虑刷新的好地方就在HEAD之后,因为头部的HTML通常更容易生成,并且它允许您包含任何CSS和JavaScript文件,以便浏览器在后端处理时并行地开始获取.

例:

... <!-- css, js -->
</head>
<?php flush(); ?>
<body>
... <!-- content -->
Run Code Online (Sandbox Code Playgroud)

请注意,此处发生刷新的点是在写入head标记之后.这很有意义,因此浏览器可以开始加载图像和脚本,同时渲染和提供页面的其余部分.

有没有办法在显式使用ASP.NET之后刷新头部(或页面的任何其他部分)?

cas*_*One 10

您应该能够在页面末尾和body语句的开头之间放置以下内容:

<% Response.Flush(); %>
Run Code Online (Sandbox Code Playgroud)

但是,如果您正在使用脚本管理器或任何其他类型的控件将在html的head部分中注册自己的输出,请小心.