热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ASP如何清除页面缓存。Cookies集合,Buffer,Expires,ExpiresAbsolute,CacheControl

ASP如何清除页面缓存如何清除页面缓存,禁止页面缓存,如何禁止禁止页面缓存当使用ASP进行Web编程时,你发现确实修改了程序代码&#x

ASP如何清除页面缓存

如何清除页面缓存,禁止页面缓存,如何禁止禁止页面缓存

当使用ASP进行Web编程时,你发现确实修改了程序代码,确认没有改错,却发现输出的Webyemi8an没有变化,这就是服务端将此ASP文件加入了页面缓存。

     清楚页面缓存有一下几种方法;

     1.在ASP页面首部加入一下代码:

       Response.Buffer=True

       Response.ExpiresAbsolute=Now()-1

       Response.Expires=0

       Response.CacheControl=“no-cache”

       Response.AddHeader “Pragma”,“no-Cache”

     2.在HTML代码中加入下面的代码,不过这些代码似乎不能解决刷新无效的问题,因为这些代码只是针对客户端的页面缓存而已,只具有清楚客户端的页面缓存的功能。

      

       

       

       

      

     3.如果一个ASP文件是url.asp,那么在访问的时候,脚本链接应该为:

      

========================================================================================

COOKIEs 集合,Buffer,Expires,ExpiresAbsolute,CacheControl  


实例

"Response.COOKIEs" 命令用于创建 COOKIE 或者设置 COOKIE 的值:

<%
Response.COOKIEs("firstname")&#61;"Alex"
%>在上面的代码中&#xff0c;我们创建了一个名为 "firstname" 的 COOKIE&#xff0c;并为它赋值 alex 。

也可以为 COOKIE 设置属性&#xff0c;比如设置 COOKIE 的失效时间&#xff1a;

<%
Response.COOKIEs("firstname")&#61;"Alex" 
Response.COOKIEs("firstname").Expires&#61;#May 10,2002#
%>现在&#xff0c;名为 "firstname" 的 COOKIE 的值是 "Alex"&#xff0c;同时它在用户电脑中的失效日期是 2002 年 5 月 10 日。

"Request.COOKIEs" 命令用于取回 COOKIE 的值。

在下面的例子中&#xff0c;我们取回了 COOKIE "firstname" 的值&#xff0c;并把它显示到页面上&#xff1a;

<%
fname&#61;Request.COOKIEs("firstname")
response.write("Firstname&#61;" & fname)
%>输出&#xff1a;

Firstname&#61;Alex

一个 COOKIE 可以包含一个多值的集合。我们称之为 COOKIE 拥有 key 。

在下面的例子中&#xff0c;我们要创建一个名为 "user" 的 COOKIE 集合。"user" COOKIE 拥有包含有关用户信息的 key 。

<%
Response.COOKIEs("user")("firstname")&#61;"John"
Response.COOKIEs("user")("lastname")&#61;"Adams"
Response.COOKIEs("user")("country")&#61;"UK"
Response.COOKIEs("user")("age")&#61;"25"
%>下面的代码可读出所有服务器已向用户发送的 COOKIE 。请注意&#xff0c;我们使用了 HasKeys 属性来判断 COOKIE 是否拥有 key &#xff1a;


<%
dim x,y

for each x in Request.COOKIEs
  response.write("

")
  if Request.COOKIEs(x).HasKeys then
    for each y in Request.COOKIEs(x)
      response.write(x & ":" & y & "&#61;" & Request.COOKIEs(x)(y))
      response.write("
    next
  else
    Response.Write(x & "&#61;" & Request.COOKIEs(x) & "
")
  end if
  response.write "

"
next
%>



%>输出&#xff1a;

firstname&#61;Alex
user:firstname&#61;John
user:lastname&#61;Adams
user:
country&#61;UK
user:
age&#61;25


&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;

不知道大家对Buffer了解多少&#xff0c;很多人对这个概念都比较模糊&#xff0c;尤其是在asp中。很多初学者在编写asp程序时很少用到这条语句&#xff0c;下面我就来说说Buffer的用途以及它在asp程序中的作用。 
一、Buffer 
Buffer从英文直译过来的意思是“缓冲区”&#xff0c;这里我们将它称为缓冲&#xff0c;因为它不仅是个名词&#xff0c;还是个动词。 
缓冲区是存储一系列的数据的地方&#xff0c;客户端所获得的数据可以从程序的执行结果直接输出&#xff0c;也可以从缓冲区输出。但是这两种方式在速度上是有差异的&#xff1a;在web中&#xff0c;当一个asp程序被请求的次数不多时&#xff0c;二者基本上没有什么差异&#xff0c;至少我们感觉不出来。但是当有很多人请求一个asp程序时&#xff0c;速度可就不一样了。假如没有缓冲区&#xff0c;那么每个请求asp程序的人的客户端所得到的结果都是asp程序执行一次所得到的结果&#xff0c;而假如预先将asp程序缓冲&#xff0c;那么每个客户端所得到的结果就是缓冲区的结果&#xff0c;不是执行一次程序的结果。比如有1000个用户同时访问一个asp页面&#xff0c;假如这个asp程序没有缓冲&#xff0c;那么程序将被执行一千次&#xff0c;这样服务器的负荷就回加大&#xff0c;从而导致客户端打开页面速度变慢&#xff1b;假如这个asp程序被缓冲了&#xff0c;那么结果就不一样了&#xff0c;每个客户端直接从缓冲区获得数据&#xff0c;服务器将不会因为访问增加而增加程序执行次数&#xff0c;因此客户端打开页面的速度也就比上一种情况要快。这就是Buffer的好处。 
二、如何将asp程序缓冲 
这个问题其实很简单&#xff0c;只要在asp程序的第一行加上&#xff1a; 
<% Response.Buffer &#61; True %> 
就可以了。 
这句话的意思就是指明输出页面是否被缓冲&#xff0c;当属性值为True时&#xff0c;服务器将不会向客户端发送任何信息&#xff0c;直到所有程序执行完或者碰到 
<% Response.Flush %>或<% Response.End %> 
语句&#xff0c;才会释放缓冲区的信息。 
三、总结 
Response的Buffer属性虽然能够提高页面显示速度&#xff0c;但是也要分什么情况。假如你正在制作一个普通的个人主页&#xff0c;访问量不是很高&#xff0c;并且没有什么复杂的执行程序&#xff0c;那么用不用这个属性就不是很重要&#xff0c;因为将数据缓冲也需要一段时间&#xff0c;只不过我们感觉不到罢了&#xff1b;但是假如你正在制作一个大型论坛或者一个产品展示或其他的商务站点&#xff0c;并且访问量很高&#xff0c;那么我建议在程序的第一行加入 
<% Response.Buffer &#61; True %> 
这句话&#xff0c;因为这样能够让客户在有效的时间内获得更多的数据。 
&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;

Response.Expires

一般情况下&#xff0c;当用户请求WEB服务器时&#xff0c;服务器把请求回复给客户端。在客户端&#xff0c;浏览器把缓存作为一种加快速度的策略&#xff0c;就是当请求时先检查缓存的情况&#xff0c;如果有就直接调缓存了&#xff0c;而不请求服务器了。 在WEB程序设计中&#xff0c;有时为了防止重复的提交或者严格的次序等&#xff0c;必须让用户的数据立即在使用后就过期&#xff0c;当用户后退时就显示过期而不能继续使用。也算是为安全考虑的吧。 一般&#xff0c;response.expires写在页面的最上端&#xff0c;后面跟的是一个时间&#xff0c;就是过期的时间&#xff0c;0表示立即过期。 -1也是一样的道理&#xff0c;即是-9999也是一样的。

如&#xff1a;登陆验证码&#xff0c;使用Response.Expires &#61; -1可以在登陆失败时点后退按钮后让验证码换一个&#xff0c;而不是原先的那一个。

Response.CacheControl &#61; "no-cache"

设置不缓存在临时文件中&#xff0c;本句是指&#xff0c;上网时看到的图片通常在internet的临时文件都能够找到对应的文件&#xff0c;如果加上这一句就找不到了。

Response.expires&#61;0也表示立即过期&#xff0c;但如果client和server不在一个时区或者client的时间早于server上的时间&#xff0c;则不能立即过期。所以用负数或者用Response.ExpiresAbsolute&#61;now()-1来表示立即过期&#xff0c;response.expires&#61;1表示在1分钟后过期。

 

asp中Response.ExpiresAbsolute&#61;now()-1

 

在asp页面中&#xff0c;通常会有这样的设置。

 

Response.ExpiresAbsolute&#61;now()-1‘设置过期时间的绝对值为当前时间-1,即出来后就过期了

 

这是因为默认情况下&#xff0c;浏览器将页面先载入缓存&#xff0c;然后才显示出来&#xff0e;通过上述设置&#xff0c;使浏览器对页面不进行缓存&#xff0c;所以当用户点&#xff02;后退&#xff02;后&#xff0c;由于页面没有缓存&#xff0c;所以浏览器只能再次通过向服务器发出&#xff28;&#xff34;&#xff34;&#xff30;请求来得到页面&#xff0c;这样就实现了限制了用户对同一网页进行多次操作。

 

asp中Response.Expires &#61; -1

 

一般情况下&#xff0c;当用户请求WEB服务器时&#xff0c;服务器把请求回复给客户端。在客户端&#xff0c;浏览器把缓存作为一种加快速度的策略&#xff0c;就是当请求时先检查缓存的情况&#xff0c;如果有就直接调缓存了&#xff0c;而不请求服务器了。 

在WEB程序设计中&#xff0c;有时为了防止重复的提交或者严格的次序等&#xff0c;必须让用户的数据立即在使用后就过期&#xff0c;当用户后退时就显示过期而不能继续使用。也算是为安全考虑的吧。 

一般&#xff0c;response.expires写在页面的最上端&#xff0c;后面跟的是一个时间&#xff0c;就是过期的时间&#xff0c;0表示立即过期。

 

<%&#64;LANGUAGE&#61;"Vbscript" CODEPAGE&#61;"936"%>
<% 
Response.ExpiresAbsolute&#61;#2010-8-5 14:09:30#   
if now>Response.ExpiresAbsolute then    
response.Write("该页面已过期")     
else
response.Write("欢迎光临&#xff01;&#xff01;")     
end if
%>

 

 


推荐阅读
  • 在PHP中如何正确调用JavaScript变量及定义PHP变量的方法详解 ... [详细]
  • 本文将详细介绍如何在Mac上安装Jupyter Notebook,并提供一些常见的问题解决方法。通过这些步骤,您将能够顺利地在Mac上运行Jupyter Notebook。 ... [详细]
  • 本文探讨了如何通过编程手段在Linux系统中禁用硬件预取功能。基于Intel® Core™微架构的应用性能优化需求,文章详细介绍了相关配置方法和代码实现,旨在帮助开发人员有效控制硬件预取行为,提升应用程序的运行效率。 ... [详细]
  • 使用ArcGIS for Java和Flex浏览自定义ArcGIS Server 9.3地图
    本文介绍了如何在Flex应用程序中实现浏览自定义ArcGIS Server 9.3发布的地图。这是一个基本的入门示例,适用于初学者。 ... [详细]
  • Spring Boot 中配置全局文件上传路径并实现文件上传功能
    本文介绍如何在 Spring Boot 项目中配置全局文件上传路径,并通过读取配置项实现文件上传功能。通过这种方式,可以更好地管理和维护文件路径。 ... [详细]
  • 单片微机原理P3:80C51外部拓展系统
      外部拓展其实是个相对来说很好玩的章节,可以真正开始用单片机写程序了,比较重要的是外部存储器拓展,81C55拓展,矩阵键盘,动态显示,DAC和ADC。0.IO接口电路概念与存 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 原文网址:https:www.cnblogs.comysoceanp7476379.html目录1、AOP什么?2、需求3、解决办法1:使用静态代理4 ... [详细]
  • 本文介绍了如何利用Struts1框架构建一个简易的四则运算计算器。通过采用DispatchAction来处理不同类型的计算请求,并使用动态Form来优化开发流程,确保代码的简洁性和可维护性。同时,系统提供了用户友好的错误提示,以增强用户体验。 ... [详细]
  • 2018 HDU 多校联合第五场 G题:Glad You Game(线段树优化解法)
    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6356在《Glad You Game》中,Steve 面临一个复杂的区间操作问题。该题可以通过线段树进行高效优化。具体来说,线段树能够快速处理区间更新和查询操作,从而大大提高了算法的效率。本文详细介绍了线段树的构建和维护方法,并给出了具体的代码实现,帮助读者更好地理解和应用这一数据结构。 ... [详细]
  • 本文详细探讨了使用纯JavaScript开发经典贪吃蛇游戏的技术细节和实现方法。通过具体的代码示例,深入解析了游戏逻辑、动画效果及用户交互的实现过程,为开发者提供了宝贵的参考和实践经验。 ... [详细]
  • 每年,意甲、德甲、英超和西甲等各大足球联赛的赛程表都是球迷们关注的焦点。本文通过 Python 编程实现了一种生成赛程表的方法,该方法基于蛇形环算法。具体而言,将所有球队排列成两列的环形结构,左侧球队对阵右侧球队,首支队伍固定不动,其余队伍按顺时针方向循环移动,从而确保每场比赛不重复。此算法不仅高效,而且易于实现,为赛程安排提供了可靠的解决方案。 ... [详细]
  • `chkconfig` 命令主要用于管理和查询系统服务在不同运行级别中的启动状态。该命令不仅能够更新服务的启动配置,还能检查特定服务的当前状态。通过 `chkconfig`,管理员可以轻松地控制服务在系统启动时的行为,确保关键服务正常运行,同时禁用不必要的服务以提高系统性能和安全性。本文将详细介绍 `chkconfig` 的各项参数及其使用方法,帮助读者更好地理解和应用这一强大的系统管理工具。 ... [详细]
  • 如何利用Java 5 Executor框架高效构建和管理线程池
    Java 5 引入了 Executor 框架,为开发人员提供了一种高效管理和构建线程池的方法。该框架通过将任务提交与任务执行分离,简化了多线程编程的复杂性。利用 Executor 框架,开发人员可以更灵活地控制线程的创建、分配和管理,从而提高服务器端应用的性能和响应能力。此外,该框架还提供了多种线程池实现,如固定线程池、缓存线程池和单线程池,以适应不同的应用场景和需求。 ... [详细]
  • 在探讨Hibernate框架的高级特性时,缓存机制和懒加载策略是提升数据操作效率的关键要素。缓存策略能够显著减少数据库访问次数,从而提高应用性能,特别是在处理频繁访问的数据时。Hibernate提供了多层次的缓存支持,包括一级缓存和二级缓存,以满足不同场景下的需求。懒加载策略则通过按需加载关联对象,进一步优化了资源利用和响应时间。本文将深入分析这些机制的实现原理及其最佳实践。 ... [详细]
author-avatar
你看看我的世界_420
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有