>> 欢迎您,客人登录 按这里注册 忘记密码 在线 搜索 论坛风格  帮助  插件   


>>> 网站建设指南:网站建设、运营、推广指南,网上创业全攻略,网页制作经典教程,理论+实例+指导...一切尽在其中!
原创综合社区〖 网站建设 〗 [返回] → 浏览:ASP 内建对象Request和Respones 标记论坛所有内容为已读 

 目前论坛总在线 352 人,本主题共有 1 人浏览。其中注册用户 0 人,访客 1 人。  [关闭详细列表]

原创综合社区教堂开通!   婚姻介绍中心开通!    原创综合社区礼品超市开通!  原创综合社区论坛博客开通

血与荣耀メ公会内部区申请 为我们论坛付出巨大贡献的人员的名单 宠物系统开放! 原创综合社区招贤纳士

发表一个新主题 回复贴子 开启一个新投票 ◆此帖被阅读 689 次◆  浏览上一篇主题  刷新本主题  树形显示贴子 浏览下一篇主题
 * 贴子主题: ASP 内建对象Request和Respones 不分页显示此帖  本贴有问题,发送短消息报告给版主  加入个人收藏&关注本贴  显示可打印的版本  把本贴打包邮递  把本贴加入收藏夹  发送本页面给朋友   
 skyyan 
 头衔: 论坛坛主
 勋章: 终生成就奖,谢谢您为社区发展做出的不可磨灭的贡献! 社区建设奖,谢谢您为社区发展做出的重大贡献! 创作大师奖,您的文章总会让人赏心悦目,继续努力哦! 幽默大师奖,您总是能给别人带来欢乐,谢谢您! 论坛卫士奖,你为了论坛的安宁与和平作出了卓越的贡献 论坛鼓励奖,你为论坛的发展作出了一定的贡献,希望你继续努力!
 门派: 创业者联盟
 

我的文集

等级: 究级天王 [荣誉]
信息: 该用户目前不在线 此人为坛主 帅哥 午马 处女座
威望: +5 积分: 2501
现金: 2239111 原创币
存款: 573623 原创币
贷款: 没贷款
来自: 天津 China
发帖: 1565
精华: 0
资料:  发送即时消息给skyyan
查阅的skyyan物品箱
注册: 2006/07/10 03:21pm
造访: 2009/01/08 08:33pm
消息 查看 搜索 好友 引用 回复贴子回复 只看我 [楼 主]
  [这个贴子最后由skyyan在 2008/06/11 04:38pm 第 1 次编辑]o-C
Asp的基本对象

Asp(Active Server Page)是一种类似于VB的面向对象的程序语言。在这里并不想详述对象等一些基本概念,而是直接介绍其语言特性,以便开发人员能够熟练地对asp程序进行修改和编制(因为很多人都只是直接利用开发工具如InterDev来生成asp程序)。

首先,Asp程序的存档名称肯定是“asp”;其次,在asp程序里面,服务器端的script要放在字符串中间,例如。如果你想在一个Asp文件中调用另一个Asp文件,则可在Asp中加上下面的声明: < ! -- #INCLUDE VIRTUAL|FILE="***.asp" -- >,这有些象C语言中的#include。其中,Virtual表示虚拟文件路径,File表示真实文件路径。

Asp有五个主要的内建对象:Request、Response、Server、Session、Application,下面先举例对Request和Response进行说明。

1、Request

Asp依然遵从流行的、利用客户端的form进行数据交换的方法。Asp内建的request对象拥有五个获取客户端资料的方法(QueryString/form/Cookies/ServerVariables/ClientCertificate)。

 语法:request.方法名称("参数")|request("参数")

 如果采用后者,系统会自动选择相应的方法。

 form

这里再重新强调form的一些属性:

Enctype=资料传送的MIME形态

Method=传送资料的方式Get/Post

Onrest=按下rest键调用的程序

Onsubmit=按下sumit键调用程序

Target=输出内容的frame窗口>

使用form传送信息一般有三种方式:由html网页内的form传信息给其他Asp;由Asp内的form传信息给另外一个Asp;Asp内的信息传送给自身。

 语法:Request.form(参数)[(索引)]

其中参数表示form中元素的名称,索引表示相同名称元素的顺序号。

例:

可循环读取名称为user的元素,其中Count是form的系统属性,用于计算同名元素的个数,如果该元素不存在,则其值为零。如果没有指明要读取第几个同名元素,则系统会把全部同名元素的值都读取出来,并用“,”作间隔。

例:Request.form("user")=abc,bcd,cde

   2、QueryString

 语法:Request.QueryString(参数)[(索引)]

 除了用form传输资料外,还可通过在超链接后接“?”的方式传输信息,如:,这时可通过Request.QueryString("user")读取传输的信息;如果出现多个重名的参数,如:,则第一次

Resquest.QueryString("user")=abc,第二次

Resquest.QueryString("user")=bcd,第三次

Resquest.QueryString("user")=cde。

3、ServerVariables

 语法:ServerVariables(参数名称)

 我们知道Web/Browse的传输协议是http,http的报头会有一些客户端的信息,如

客户IP地址、浏览器的语言系统等。这时可通过Request.ServerVariables("***")获取相关信息,如Request.ServerVariables("Accept_Language")可获取客户端浏览器 的语系。其他系统参数见下表:

SERVER_NAME server的机器名称或IP地址。

  SERVER_PORT server正在运行的端口号

REQUEST_METHOD 发出request的方法(GET/POST/HEAD

script_NAME 程序被调用的路径,如:cgi-bin/a.pl。

REMOTE_HOST 发出request请求的远端机器(client)的名称。

REMOTE_ADDR 发出request请求的远端机器(client)的IP地址。

REMOTE_IDENT 发出request的使用者名称(如是拨号上网,则为用户ID),当NCSA IdentityCheck为enabled,而且client机器支持RFC 931时,该变量有效。

CONTENT_TYPE 数据的MIME类型,如:“text/html”。

HTTP_ACCEPT client可以接受的MIME类型列表。

HTTP_USER_AGENT client发出request的浏览器类型。

HTTP_REFERER 在读取CGI程序之前,client所指的文本URL。

4、Cookies

在客户端,Cookies记录了客户端浏览器很多的信息,我们可通过Request.Cookies("名称")命令获取它的值,也可通过Response.Cookies("名称")="值"在客户端记录一些信息,以便控制访问者。设置多重Cookies的方法为Response.Cookies("名称")("名称")="值"。

5、Cache

我们可以在浏览器上设置从Cache中抽取已经访问过的页面的信息,同样,在Asp程序中也可进行类似的设置。其中Response.Clear为清空客户端的内存。Response.Buffer=True设置可从Cache中读取资料(缺省时为False)。

6、ClientCertificate

ClientCertificate用于获取客户端浏览器的身份确认信息(符合X.509标准),但客户端浏览器必须支持SSL3.0或PCT1协议。这里需做两步工作,第一步:web server必须启动用户端认证选项;第二步:对客户端浏览器进行相应设置,这样,该方法才会生效,否则,传回empty值。

2、Response

当要从服务器传送资料到客户端时,可通过下面的方法:

1)Response.Write直接输出信息,如Response.write ""。

2)Response.Redirect引导客户端到另一个url位置,如Response.Redirect "http://zyr.yeah.net",但这里有一个问题需要注意,就是该语句一定要放在标记前执行,也就是说在服务器未向客户端送出html文本报头前就要被执行,否则会出现传输错误信息。

3)Response.ContentType控制输出的文件类型,服务器送给客户端的数据包类型可以是text/html文本,也可以是gif/jpeg图形文件,所以每次传输前,我们都必须告知客户端将要传输的文件类型,一般默认情况下为“Text/Html”类型。

4)Response.Cookies 用于设置Cookies的值,语法为:Response.cookies(变量名称)[(key)|属性]=写入的信息。(key的用法前面已作说明,这里不在叙述)cookies系统默认有五个属性,包括Expires(时间)、Domain(域名)、Path(路径)、Secure(安全性)、Haskeys(判断cookies下是否还有其它cookies文本)。

5)Response.Buffer用于确定是否把信息传输到缓冲区。因为有时候我们希望把部分中间信息送到缓冲区,然后继续工作。当所有处理工作都完成后,才把信息输出到客户端。但当在处理过程中Flush或End方法被调用,则缓冲区内容将被输出。

Response的其它属性:

 Expires:设定网页保留在客户端浏览器的时间长度。

 ExpiresAbsolute:设定网页保留在客户端浏览器的日期与时间。

Response的其它方法:

 AddHeader:设定HTML文件的HTTP报头。

 AppendToLog:在Web Server记录档案末尾,添加字串。

 Clear:清除在缓冲区中的HTML输出资料。

 End:停止处理asp档案,并回传当时状态。

 Flush:立刻送出缓冲区的HTML资料。
o_+





CN域名续费1元起,COM域名55元!游戏公会购买COM域名送空间!学生购买域名30元100M!LEO的HACK作者购买空间五折优惠!www.linkbest365.com



不能说,就是不能说~~~~~~

丫丫(已经死亡) (187 天)

胜利:308 次
失败:0 次
心情:很不高兴
经验:EXP: 115903
体力:HP: 5200
精力:SP: 62519


原创综合社区广告位置
发贴时间2008/06/11 04:38pm IP: 已设置保密加入blog[本文共6872字节]  

 该主题只有一页

快速回复主题: ASP 内建对象Request和Respones
您目前的身份是: 客人 ,要使用其他用户身份,请输入用户名和密码。未注册客人请输入网名,密码留空。
输入用户名和密码: 用户名: 没有注册? 密码: 忘记密码?
上传附件或图片 (最大容量 2500KB)
发帖数要大于 10 篇(认证用户不限)

目前附件:(如不需要某个附件,只需删除内容中的相应 [UploadFile ...] 标签即可) [删除]
选项  插入魔法表情

使用 LeoBBS 标签?
显示您的签名?
有回复时使用邮件通知您?
使用表情字符转换?
使用字体转换?

    快速引用第 楼层的回复
 顶端 加到"个人收藏夹" 主题管理总固顶 取消总固顶 区固顶 取消区固顶 固顶 取消固顶 提升 沉底
加重 取消加重 精华 取消精华 锁定 解锁 删除 删除回复 移动



© 中文版权所有:原创论坛|原创综合社区|与你相随    豫ICP备05000285号   津ICP备05003280号
程序版权所有:山鹰(糊)、花无缺  版本:LeoBBS X Plus 5.00
 

本论坛言论纯属发表者个人意见,与 原创综合社区 立场无关