仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 433|回复: 8
打印 上一主题 下一主题

[学习教程] ASP教程之ASP教程:第八篇 ASP内建工具Response

[复制链接]
金色的骷髅 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:42:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
问题是他们究竟是喜欢他们是使用软件时,速度快还是速度慢好.(当然在3秒以内).无论是他们输入资料时,查找资料时,分析资料时. 在上一篇中作者给人人具体先容了ASP内建工具之一Request的利用办法,信任列位经由过程一系列的理论已可以纯熟把握,本篇将持续给人人先容ASP的另外一个内建工具Response。  比来,有良多伴侣来“妹儿”催我加速ASP篇一文的写作速率,并孔殷地扣问那里有关于ASP的课本。我深深地被人人的进修热忱所感动,因而决意将本人平常所汇集的一些ASP信息材料拿出来和人人共享,也但愿一切的伴侣能大方地将本人汇集的有关ASP的材料告知作者,感谢。因为今朝国际有关ASP的中文课本百里挑一,而专门针对ASP网站开辟的中文课本作者更是不足为奇(多是作者目光如豆),只是比来传闻出了一本清华年夜学出书社出书的关于MSInterDev的傻瓜书,个中有ASP的教授教养,和一本ActiveServerPage2.0的中文手册,因而今朝作者仍是次要经由过程外洋网站来猎取ASP的有关信息和材料,这也是作者写本文的一个次要缘故原由。上面我就将bookmark中的一些较典范的ASP站点排列出来:
  1、http://www.activeserverpage.com/  这是作者会见最频仍的ASP网站,也是天下上最年夜最全的关于ASP的网站之一,它内里不仅有最新的ASP文献材料,收费组件,另有一本完全的ASP进门课本,它更是ASP网站的中枢站点,经由过程它你能够抵达有数的ASP相干站点。
  2、http://www.asphole.com/
  这本是一个针对ASP毛病而创建的站点,可是它却无疑是一个完整的ASP信息站点,它不但供应了ASP的文章,及组件还供应细致透辟的连接地点。
  3、http://www.15seconds.com/faqhttp://www.15seconds.com/search
  这是一个作者所看到的最年夜的网上ASP交换站点,它具有ASP解疑的谜底,ASP邮件清单信息,ASP技能,你大概必要必要几个月的工夫才干读完这些信息。而在http://www.15seconds.com/AllComponents.asp你能够读到最新的ActiveX组件和大批收费组件的具体先容,并附有十分有用的文档与例子。
  4、http://www.microsoft.com/workshop/server/asp/aspfeat.asp
  人人都晓得ActiveServerPage是微软提出的一套基于NTIIS的WEB服务器端情况,那末这个由微软本人创建的ASP手艺申明站点,人人固然是不成不看的。
  5、http://www.serverobjects.com/
  在这里你能够取得有数有用的ActiveX组件,并下载它们的试用版,只惋惜个中的年夜部分极好的组件都是要Money的。
  6、http://www.cyscape.com/asp/browscap/
  人人还记得作者在ASP2一文中先容的谁人用来分辨客户端扫瞄器版本的BrowserCapabilitie组件吗?在这个站点你能够取得最新的BROWSCAP.INI文件,它具有每个ASP安装时微软没有供应的扫瞄器的信息,如许你在ASP中判别客户扫瞄器是就可以够十拿九稳了。
  7、http://www.microsoft.com/data/ado/
  ASP最壮大且便利的功效莫过于同数据库的毗连,经由过程ASP内建的ActiveX组件,我们能够十拿九稳的将WEB与一切和ODBC兼容的数据库毗连起来,在这个微软的站点上你能够猎取良多有用的ADO材料。
  8、http://www.cobb.com/m_sbn4/
  一个不错的ASP论坛,你能够在那边贴你的成绩,读取他人的成绩息争答。
  上面,我们入手下手进修ASP的另外一个内建工具Response。
  与Request是猎取客户端HTTP信息相反,Response工具是用来把持发送给用户的信息,包含间接发送信息给扫瞄器、重定向扫瞄器到另外一个URL或设置cookie的值。
  语法
  Response.collection|property|method
  1、属性
  1、Buffer
  Buffer属性唆使是不是缓冲页输入。当缓冲页输入时,只要以后页的一切服务器剧本处置终了大概挪用了Flush或End办法后,服务器才将呼应发送给客户端扫瞄器,服务器将输入发送给客户端扫瞄器后就不克不及再设置Buffer属性。因而应当在.asp文件的第一行挪用Response.Buffer。
  2、Charset
  Charset属性将字符集称号附加到Response工具中content-type题目的前面。关于不包括Response.Charset属性的ASP页,content-type题目将为:content-type:text/html。
  我们能够在.asp文件中指定content-type题目,如:
  <%Response.Charset="gb2312")%>
  将发生以下了局:
  content-type:text/html;charset=gb2312
  注重,不管字符串暗示的字符集是不是无效,该功效城市将其拔出content-type题目中。且假如某个页包括多个含有Response.Charset的标志,则每一个Response.Charset都将替换前一个CharsetName。如许,字符集将被设置为该页中Response.Charset的最初一个实例所指定值。
  3、ContentType
  ContentType属性指定服务器呼应的HTTP内容范例。假如未指定ContentType,默许为text/HTML。
  4、Expires
  Expires属性指定了在扫瞄器上缓冲存储的页距过时另有几工夫。假如用户在某个页过时之前又回到此页,就会显现缓冲区中的页面。假如设置response.expires=0,则可以使缓存的页面当即过时。这是一个较有用的属性,当客户经由过程ASP的上岸页面进进WEB站点后,应当使用该属性使上岸页面当即过时,以确保平安。
  5、ExpiresAbsolute
  与Expires属性分歧ExpiresAbsolute属性指定缓存于扫瞄器中的页面切实其实切到期日期和工夫。在未到期之前,若用户前往到该页,该缓存中的页面就显现。假如未指准时间,该主页在当天半夜到期。假如未指定日期,则该主页在剧本运转当天的指准时间到期。以下示例指定页面在1998年12月10日上午9:00分30秒到期。
  <%Response.ExpiresAbsolute=#Dec12,19989:00:30#%>
  2、办法
  1、Clear
  能够用Clear办法扫除缓冲区中的一切HTML输入。但Clear办法只扫除呼应注释而不扫除呼应题目。能够用该办法处置毛病情形。可是假如未将Response.Buffer设置为TRUE,则该办法将招致运转时毛病。
  2、End
  End办法使Web服务器中断处置剧本并前往以后了局。文件中残剩的内容将不被处置。假如Response.Buffer已设置为TRUE,则挪用Response.End将缓冲输入。
  3、Flush
  Flush办法当即发送缓冲区中的输入。假如未将Response.Buffer设置为TRUE,则该办法将招致运转时毛病。
  4、Redirect
  Redirect办法使扫瞄器当即重定向到程序指定的URL。这也是一个我们常常用到办法,如许程序员就能够依据客户的分歧呼应,为分歧的客户指定分歧的页面或依据分歧的情形指定分歧的页面。一旦利用了Redirect办法任安在页中显式设置的呼应注释内容都将被疏忽。但是,此办法不向客户端发送该页设置的其他HTTP题目,将发生一个将重定向URL作为链接包括的主动呼应注释。Redirect办法发送以下显式题目,个中URL是传送给该办法的值。如:
  <%Response.redirect("www.chinabyte.com")%>
  5、Write
  Write办法是我们平常最经常使用的办法之一,它是将指定的字符串写到以后的HTTP输入。
  3、汇合
  Response工具只要一个汇合--Cookie
  Cookies汇合设置cookie的值。若指定的cookie不存在,则创立它。若存在,则设置新的值而且将旧值删往。
  语法
  Response.Cookies(cookie)[(key)|.attribute]=value
  这里的cookie是指定cookie的称号。而假如指定了key,则该cookie就是一个字典。attribute指定cookie本身的有关信息。attribute参数能够是以下之一:
  Domain若被指定,则cookie将被发送到对该域的哀求中往。
  Expires指定cookie的过时日期。为了在会话停止后将cookie存储在客户端磁盘上,必需设置该日期。若此项属性的设置未凌驾以后日期,则在义务停止后cookie将到期。
  HasKeys指定cookie是不是包括关头字。
  Path若被指定,则cookie将只发送到对该路径的哀求中。假如未设置该属性,则利用使用程序的路径。
  至此,我们已进修的Response工具的一切属性、办法和汇合的实际常识,上面作者将给人人演示一段复杂的程序,经由过程理论让人人加深了解。先将以下程序剪贴到记事簿中,并保留为asp7.asp。(注重将<和%之间的空格往失落!!!)
  <%
  Dimuser
Dimflag
Dimpwd
  Dimsay
Response.buffer=true开启缓冲页面功效
Response.ContentType="text/HTML"
  Response.Charset="gb2312"
  user=Request.Form("username")
pwd=Request.Form("password")
say=Request.QueryString("say")
%>
  <formmethod="POST"action="asp7.asp">
  <p>用户名:<inputtype="text"name="username"size="12"><br>
  口令:<inputtype="password"name="password"size="12"><br>
  <inputtype="submit"value="提交"name="B1"><inputtype="reset"value="作废"name="B2"></p></form>
  <%
  Ifsay=1then
  Response.Write"接待墨客台端到临!"
EndIf
  Ifsay>1then
  Response.Write"接待再次到临墨客的ASP网站!"
EndIf
  Ifuser="Adm"andpwd="shusheng"Then
  Response.Expires=1设置该页面在扫瞄器的缓冲中存储1分钟后过时。
  flag=1
  ElseIfuser="guest"andpwd="guest"Then
  Response.Expires=0使缓存的页面当即过时。
  Response.Clear清空存储在缓存中的页面
  flag=2
  ElseIfuser="vip"andpwd="vip"Then
  Response.Write"接待VIP到临墨客的ASP网站"
  flag=3
  Else
  flag=0
  Response.End当即中断剧本处置,并将缓存中的页面输入
EndIf
  Response.write"<p><ahref=asp7b.asp?flag="&flag&">静态网站计划十八般技艺--ASP篇(7)理论实习</a>&l;/p>"
将变量flag的值传送给asp7b.asp
  %>
  <p>静态网站计划十八般技艺--ASP篇(7)理论实习</p>
  再将以下程序保留为asp7b.asp。
  <%
  Dimsaysay=Request.QueryString("flag")
Selectcasesay
  case"1"
  Response.Redirect"asp7.asp?say=1"
case"2"
  Response.Redirect"asp7.asp?say=2"
case"3"
  Response.Redirect"asp7.asp?say=3"
case"0"
  Response.Redirect"asp7.asp?say=0"
EndSelect
  %>
  将这两个程序放在有实行权限的WEB假造目次下,并以http体例会见asp7.asp。在这两个程序中我们充实使用了至今为止所学过的两个ASP内建工具:Request和Response。当你第一次会见asp7.asp文件时,页面上呈现一个Form并提醒输出用户名和口令,假如你输出用户名:Adm、口令:shusheng,则会呈现以下页面:






  这是为何呢?由于我们设置了页面缓存,当利用guest上岸时,判别程序主动清空其之前一切存储在缓存中的页面,而仅将厥后剧本程序实行的了局显现出来。
  那为何第一次上岸asp7.asp页面时仅仅只显现一个Form对话框呢?由于此时程序判别到用户既非Adm,也不是guest和vip,以是实行Response.End,当即将存储在缓存中的Form显现出来,并中断厥后的统统剧本处置,包含纯HTML代码的显现。
  不管你是用Adm仍是guest或vip上岸该页面你都能够看到一个超链,该超链指向文件asp7b.asp,当我们点击该超链时,asp7.asp将变量flag的值作为参数发送给asp7b.asp,尔后者则依据该参数的值来做出判别,并根据分歧情形利用Response.Redirect再强行前往asp7.asp,并也将一个变量say的值作为参数发送给asp7.asp。云云一来,asp7.asp又会依据此参数来做出分歧的反响。
  人人如今都看到了我们仅仅用了两个很复杂的程序,就能够做到对统一个页面的多种分歧显现了局,这恰是ASP的魅力地点,列位能够以此树模程序为基本,来举行一些修改,以纯熟把握我们所学的这两个内建工具。明天的课程就到此为止了,在开头我还要申明两件事。第一,良多伴侣来信扣问那里能够看到ASP篇的前几篇文章,请人人点击此处即可以找到。第二,一些伴侣反应文中的ASP程序不克不及运转,这次要是由于Chinabyte的页面都是用数据库天生的,它限制在文章中不克不及利用带HTML或ASP格局的代码,以是在一切<标记后都加了空格,列位只需将<后的空格往失落就能够运转程序了,牢记。下一篇我们将持续进修另外一个ASP内建工具,敬请存眷。
使用cdonts,可以发送、查看邮件,实现webmail的功能。结合wsh,可以实现对nt主机的管理,如nt用户管理、iis虚拟主机设置、exchange邮箱设置等等,就像管理本地机一样方便。
小魔女 该用户已被删除
沙发
发表于 2015-1-17 11:46:16 来自手机 | 只看该作者
ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。
飘灵儿 该用户已被删除
板凳
发表于 2015-1-20 17:53:48 | 只看该作者
哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
愤怒的大鸟 该用户已被删除
地板
发表于 2015-1-29 13:49:34 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
若天明 该用户已被删除
5#
发表于 2015-2-6 01:39:58 | 只看该作者
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。
乐观 该用户已被删除
6#
发表于 2015-2-14 20:46:22 | 只看该作者
完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。
小妖女 该用户已被删除
7#
发表于 2015-3-4 10:29:28 | 只看该作者
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
飘飘悠悠 该用户已被删除
8#
发表于 2015-3-11 18:20:40 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
第二个灵魂 该用户已被删除
9#
发表于 2015-3-19 06:59:05 | 只看该作者
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-26 20:24

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表