简单ASP生成静态页实时显示生成进度代码

文章类型:常见问题    发表2015-07-06   文章编辑:怒熊网络 · 一站式互联网+技术服务商!   阅读:302

生成静态页当遇到很多页面需要生成的时候,往往会感觉浏览器很慢需要时间很厂,其实是服务器后台正在进行每一个静态页面的生成,但因为还未全部完成任务无法发送指令给浏览器造成空白或一直显示浏览器加载等待效果,用户可能会不知道是否卡死还是网络缓慢还是浏览器问题等而烦躁。

其实用一段简单的ASP代码即可解决这种体验,可实时看到是否还在生成,生成到第几个了。

简单ASP生成静态页实时显示生成进度代码用法:
for i=1 to 100
response.Write '生成第1个页面完成<br>'
Response.Flush()
next

有时候会遇到无效的情况,因为输出到浏览器的内容至少要有256字节,加上下面这个即可:
for i=1 to 100
str=str&'<!--无效时加这段可产生256个以上字节-->'
if len(str)>=256 then exit for
response.Write '生成第1个页面完成<br>'
Response.Flush()
next

Response.Flush()函数的作用是立刻输出到浏览器不管是否执行完毕,但需要有几个注意事项:
1,不能开启应用程序压缩,IIS的话在网站属性,服务,压缩应用程序文件前面不要勾选;
2,输出内容必须超过256个字节的大小,小于256字节的话无效输出;
3,不能开启页面缓存,可在实时显示的这个页面头加上以下代码即可:
Response.Buffer=false
Response.Expires=0
Response.ExpiresAbsolute = Now() - 1
Response.AddHeader 'Pragma','No-Cache'
Response.AddHeader 'Cache-Control','Private'
Response.CacheControl = 'No-Cache'

这样即可实现简单ASP生成静态页实时显示生成进度了,提高用户体验。

本文为怒熊网【重庆网站建设】网站建设www.nuxiong.com原创,转摘请保留版权,谢谢。