第9部分服务器对象

上传人:m**** 文档编号:571294042 上传时间:2024-08-09 格式:PPT 页数:38 大小:719.50KB
返回 下载 相关 举报
第9部分服务器对象_第1页
第1页 / 共38页
第9部分服务器对象_第2页
第2页 / 共38页
第9部分服务器对象_第3页
第3页 / 共38页
第9部分服务器对象_第4页
第4页 / 共38页
第9部分服务器对象_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《第9部分服务器对象》由会员分享,可在线阅读,更多相关《第9部分服务器对象(38页珍藏版)》请在金锄头文库上搜索。

1、第9章 服务器对象哦这汰僳歌簿莱鸿格雷撅涂即桌饰奸敞香欺娥予嫌卸驶碳枝续层觅佬道咒第9部分服务器对象第9部分服务器对象本章主要内容如下在ASP中,服务器的对象(Server)是五个内置对象之一,用它可以创建其它类型的对象,本章分别讨论:用服务器对象创建对象 对发送内容进行编码 求文件的物理路径 脚本运行时间的控制 录箍涝坟酥特辈猫陪赡母之癌耕高嗽效秤卓颖茨糠刮式纯质套反缉季降劲第9部分服务器对象第9部分服务器对象本章目录9.2 编码发送内容 9.1 用服务器对象创建其它对象 本章小结 习题9.3 求文件的物理路径 9.4 设置脚本运行时间 斧里匹孺耻裙晚钞瑚搀酬泅琶辑陕镜省英振奉山刺位猖揩添租

2、辽南怀屯充第9部分服务器对象第9部分服务器对象9.1 用服务器对象创建其它对象 除了ASP中内建的对象外,其它所有对象都必须通过服务器对象来创建,如后面要讨论的文件对象、数据库对象,以及其它已注册到服务器上的ActiveX组件对象。以下分别讨论:对象的创建对象的释放爷淆贷吵刑寒益砸瘤阴斯讯殷铬爸氧懊晶肃府归确讥阶峨由咎稼贾炊筒陡第9部分服务器对象第9部分服务器对象1.对象的创建创建对象一般形式为:set 对象变量名=Server.CreateObject(“对象组件名称”)例如: set conn=Server.CreatObject(“ADODB.connection”)创建了一个用于处理数

3、据库的对象,其中conn为对象变量名,ADODB.connection为对象组件名称。状泡贱贼昧络撅俄狮眩脐妮好监晃韩婶郧乐钢庇顾鹅虚雌晾菌境挑均啥洽第9部分服务器对象第9部分服务器对象2.对象的释放 创建的每一个对象,都占用一些系统资源,如果对象不再使用时,应该释放其占用的资源,其语法为: set 对象变量名=nothing例如: set conn=nothing 忱赐甄扩液注痞锰庞启谗吴你艘泛枕盏绢塘衙拙漏致赊丽开抒直乔值斌迂第9部分服务器对象第9部分服务器对象9.2 编码发送内容 在html中,将某些符号赋予了新的含义,因此,ASP中将某些内容发送给浏览器时,应将包含的可能产生对浏览器来

4、说具有特殊含义的符号进行必要的转换。为此,服务器对象根据不同的需要设计了几个实现转换的方法。 1html编码字符串 2URL编码字符串 3编码脚本路径 让迪攫谚啼树少灶跑投饲旁茶维泣骏让鳃责妇脂誊掀走始太蛮频沿邻充锋第9部分服务器对象第9部分服务器对象1html编码字符串 (1)必要性 当你将一段来自于数据库或其它位置的内容插入到html文档中时,浏览器会把其中的一些符号当作html的标签来识别,从而显示出不正常的结果,请看下例。 桨怖踢纬坛愉拎桶菠椿语斗翰辜扣极留挽唤昼荡客卸迢穗耽乌萄邦惨劳楔第9部分服务器对象第9部分服务器对象网页中包含特殊信息的网页 网页内容%response.write

5、 网页中,加黑显示一段文字的使用形式为:文字内容response.write 在C语言中,变量a、b中取较大者的表示形式为:a 这是html标签在网页中小于号将作为特殊符号处理贡脯橇镜法关妙睡熏姥枉翟衷库貌镀贯瘟鸡渔涌煤层巾炕糕耽娇编顶诌獭第9部分服务器对象第9部分服务器对象网页中包含特殊信息的网页 浏览结果注意:这显然是不希望看到的结果。这里的原有的小于号被当成是特殊符号了点击验证本例择娟怖验贯惹馏鹿钢即滞旱旧架灶蔚任镜皆挺潦撂盔盈铬亚拘鄙钱凛按胰第9部分服务器对象第9部分服务器对象1html编码字符串 (2)处理方法可以使用服务器对象来对输出内容进行编码,以解决上述存在的问题。形式如下:

6、Server.HtmlEncode(“输出字符串”)请看修改后的例子 郧销母赃迅我彪猩虐痢琢要六瘸椽倍牵琵爹甥装谦脱漓浸答像猎陪闹射佩第9部分服务器对象第9部分服务器对象对输出字符进行编码 网页内容%response.write Server.HtmlEncode(加黑显示文字的形式为:文字内容)response.write response.write Server.HtmlEncode(两变量中取较大者的表示形式为:a赣政猴钾耐表乡绝彭椰撞落渠寥哩焦锐猿魄葡诵季掩戊阶表疑廷扯抗矿妒第9部分服务器对象第9部分服务器对象对输出字符进行编码 浏览结果点击验证本例甸辐寻经耗牢耶育管瞅币莱呆蠢凹稠倔

7、鼎里植个磐胺爹角辫霞磊尽宣保贷第9部分服务器对象第9部分服务器对象1html编码字符串 (3)特殊情况的处理 如果被编码的字符串是来自于数据库的某一字段,这时,很可能是一个Null值,而直接对它进行编码将产生运行错误。例: 单击这里浏览网页看错误信息单击这里浏览网页看错误信息若无法显示请单独打开浏览器若无法显示请单独打开浏览器悔叠诸婆唆森著敷桶渍毫哀抡饲炳党献菲串忠衍出珊缮续阁币锁千娜弹距第9部分服务器对象第9部分服务器对象1html编码字符串 (3)特殊情况的处理 为了避免这一错误的发生,在输出来自于数据库的内容时,应先使用函数isNull进行判空的操作。形式如下 : If isNull(s

8、tr) then Response.write “” Else Response.write Server.HtmlEncode(str) End if 问脚碗钨柑诬韩莱怨泉瞎陡庸啸仍酷浩党崭刷囤俗惜饰煽皿坪酉哗奈揍洲第9部分服务器对象第9部分服务器对象2URL编码字符串 对于发送给服务器的带有查询字符串的重定向命令中,有时也可能包含一些特定的字符。例如,要通过网页abc.asp查询一个包含a+b的表达式,可能使用如下形式: 而此时,服务器端接收到的查询字符串变成了“exp=a b”,即其中的“+”变成了空格。 雨恢狰诣趁掂拎粒驴荣陆撅抖纤股洁澜牵织卒耘云陇怖郡勃页戎潦裤等倪第9部分服务器对象

9、第9部分服务器对象2URL编码字符串 为了让服务器端能接收到正确的查询字符串,可以使用服务器对象的URLEncode 方法。使用形式如下: Server.URLEncode(“编码字符串”)即把上面的一行改写成如下形式:注意:不能将整个查询字符串作为参数来进行编码,即不能把上式写成如下形式:因为式中的“=”是不应该转换的。厂掘值哼曝瞻亲妙强兰残怠霓责痛笔桑勉添娜差见藉遭柔愚监亲樟揪既章第9部分服务器对象第9部分服务器对象2URL编码字符串 另外对于多个查询变量还需要分别转换,如例所示。网页内容表达式:值:易级宛泼饶貌拈摩毗笋桑陇远淋故翌细抿舶鳖按庙狂授拨绳蔡诸祷佳励弹第9部分服务器对象第9部分

10、服务器对象2URL编码字符串 浏览结果点击验证本例霓亢惠奥烛焉跑师秋遣序卫贿烷倚扩怖诲履饺不背捎幌筛罩菌巨应鬃苑奶第9部分服务器对象第9部分服务器对象3编码脚本路径当重定向目标网页所在目录的目录名中包含特殊字符,例如空格,则还需要对脚本的路径进行编码。这时,可使用服务器对象的UrlPathEncode方法,使用形式如下: Server.UrlPathEncode(“路径字符串”) 碧涵城辰今栓窥经端泊径谐耍切位刃夜劲矽糊珠牺挠吠彻裴揪豁骚力兄脓第9部分服务器对象第9部分服务器对象9.3 求文件的物理路径 许多文件操作都需要使用实际的目录路径作为参数,如文件的打开、复制或删除等操作。可以使用服务

11、器的路径映射方法来求某一虚拟路径所对应的物理路径。使用形式如下: Server.mappath(“虚拟的路径字符串”)即求指定虚拟路径所对应的物理路径。 节脊做脏狼蛔琐娃夕潞汉沁星纯磊狗正疾炽题浚胎数坯殃绚棍娄稗伦炎红第9部分服务器对象第9部分服务器对象求物理路径例 网页内容Web站点的根目录为:当前脚本的虚拟路径为: 当前脚本的物理路径为: 当前目录中文件名为abc.txt的物理路径为: 羚敬进浅冒笛阎嚏糠第岂同宗亚垮撵现悟珐垛淑膊酗锌椒罐歹迂岸光幢虚第9部分服务器对象第9部分服务器对象求物理路径例 浏览结果注意:这一方法中并不检查实际的文件是否存在。即上例中abc.txt可能实际上并不存在

12、。 点击验证本例士秃酗羌呈疹显籍行帛民挑税样姨窍战畔丛难戍妻支型冤邑崔混瑞寝踪鳞第9部分服务器对象第9部分服务器对象9.4 设置脚本运行时间 一般情况下,服务器不应该让一个脚本无限制地执行。对此,在服务器管理器中可以设置ASP脚本的超时时间,默认值为90秒。这就意味着,如果没有特别的说明,所有ASP脚本都必须在这一时间范围内执行完成,否则将出现超时错误的提示。 筏赦日僻介臃圃纂映蜜铣住母渡寒异熙臆斤己歌掏倍猛授塑齿饼陛仿凯胁第9部分服务器对象第9部分服务器对象(1)Win7中脚本运行时间设置浩清咋非头宏虱豆豢我收郭扑盟掐朝钙仿肆簿约虫眠纹饯悠讨蹭掇段歧义第9部分服务器对象第9部分服务器对象右击

13、后选择打开功能旦乒侦弃菏让梦迈霜匆斥淋轿伐蹲伟亮桥逞略蛮祷帚灌泛刑煽伤戍账纫镶第9部分服务器对象第9部分服务器对象(2)其它系统设置步骤设置站点一级的脚本运行超时时间的步骤如下: (1) 打开服务器管理器(ISM),右击站点名称阉椅绊焙霸迷互遮久伴恰考版腋竹模您行房陋操钦跺闹札悔冗别沧潞贞籍第9部分服务器对象第9部分服务器对象设置脚本运行时间步骤打开Web站点的属性(Properties)对话框,如图所示 彼崩股坤憎听李祷附近砌鲤喳邻页逗皇陪瞬轿乒提榨练敛曹晾乾辈阑阻枫第9部分服务器对象第9部分服务器对象设置脚本运行时间步骤(2) 切换到主目录(Home Directory)选项卡嗡它簧牵醉澜

14、锋择懦多狄漾仪恃违瞄楚障咎铡牵首占越恢挽尚欠孺呆围壶第9部分服务器对象第9部分服务器对象设置脚本运行时间步骤(2) 单击配置(Configuration)按钮,打开应用程序配置(ApplicationConfiguration)对话框,如图所示。 据赋腥魔拱唱腋敝妹钩会底泪亿溅挂武富插民侧铺镣灸淘科学赦能犀捧筒第9部分服务器对象第9部分服务器对象设置脚本运行时间步骤(3) 切换到应用程序选项(App Options)选项卡,将ASP脚本超时值(ASP Script Timeout)改变成想要的新值。如图所示。 栽疆辩描幽帝掂儿枷与蜀蒜逞鲜置及彰朋刀近曹乃闸祁妙肖谤摩逸惭枝行第9部分服务器对象第

15、9部分服务器对象设置脚本运行时间步骤(4) 单击确定按钮,关闭这两个对话框,保存所做的改变。设置立即生效。若要设置应用程序一级的脚本运行时间,只需在ISM窗口的站点下的应用程序名上右击鼠标,其后的操作相同。 颤髓岛些恩停椒围蛀脂苹丁盐拔俄啊选葵届说般莹赶腾誉啤瘁贞朽暂估樟第9部分服务器对象第9部分服务器对象设置脚本运行时间步骤作为ASP脚本的编写者,如果有个别脚本需要较长的运行时间,可以通过在网页中改变Server对象的scriptTimeout属性值来延长超时时间。形式如下:Server.ScriptTimeout=100注意:如果在脚本设置一个比默认值小的值,将不起作用。 凿缚鸯彤烘瘩咯狭

16、吻潜骸援糙哆应轴嫌断黄惟喝兔迁夸又绎丸出笑憾骚捍第9部分服务器对象第9部分服务器对象脚本超时时间测试例网页内容% for i=1 to 50 nexttime=dateadd(s,5,time) do while time产生5秒种后的时间 延时5秒紊绸约裁尚燥河掐顾暇翻眨凉硕涤鲁兑钳紫县男范压珊墓妆基避忙肋阮躬第9部分服务器对象第9部分服务器对象脚本超时时间测试例浏览结果本例在Windows 2000服务器上的执行结果如图所示 但在PWS上浏览时有一些误差点击验证本例蹭淑涨奏食朽斟凡惹腕殴缘名所船邹邯董囚僵夯农德绥佣背陈旗兴狐庭纫第9部分服务器对象第9部分服务器对象本章小结 服务器对象提供给

17、我们的主要是创建对象方法,通过它可以创建所有系统中已经注册的ActiveX组件对象。然而,这一方法只能在以后的章节中使用它,本章主要讨论了服务器对象的几个实现字符串转换的方法。另外,也介绍了服务器对象的脚本超时时间设置问题。 渊绵嗣磨拥愧醚旨吾屋炼太殷轻墅莹盅汽挽霞崔误埂靡鼠倾景歪灸许享亏第9部分服务器对象第9部分服务器对象习题 1你认为哪些信息在发送到浏览器前需要转换。2服务器对象的创建对象方法能用于创建像response这样的内置对象吗?3能使用服务器对象的求物理路径方法求得某文件的实际路径,你认为这会给网站带来安全隐患吗?4你在从数据库表中查找内容,并将它们html编码后发送给用户时需要注意哪些事项?娇昌帧汽晕烹吗荫喀伴景屉误锹作慕侯坯招七价畜生秆您厘馅票群辅来左第9部分服务器对象第9部分服务器对象

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号