第四章request与response对象---学习笔记
1.ASP的内置对象
- Request对象:从客户端获取数据
- Response对象:向客户端输出数据
- Session对象:记载特定客户的信息
- Application对象:记载同一个应用程序中的所有用户之间的共享信息
- Server对象:提供服务器端的许多应用函数如何创建COM对象和Scripting组件
2.request对象获取客户端信息的五种数据集合
1.语法:request[.数据集合](参数)
如:<%strA=Request.Form(“txtA”) rem获取表单元素的txtA的值%>
2.QueryStirng获取字符串信息(获取标识在url后面的变量及值)
1-1.asp
<%a href=”4-1.asp?name=白芸&age=22”%>
1-2.asp
<%
Dim name ‘声明变量
Name=Request.queryString(name) ‘获取url后面的变量及值
Response.write”姓名:”&name ‘输出姓名
%>
3.Form数据集合获取表单信息
实例:
实例:
4.Cookies
5.ServerVariables获取服务器端或者客户端的信息
Request.ServerVariables(variablename)
variablename表示环境变量名称字符串,常用的环境变量有
- LOCAL_ADDR服务器端IP地址
- REMOTE_ADDR客户端IP地址
- SCRIPT_NAME正在运行的脚本文件的路径信息
<%Dim ip
Ip=request.ServerVariables(“REMOTE_ADDR”)
Response.write”来访者IP地址:”&ip
%>
6.ClientCertiFicate获取浏览器和服务器的身份验证信息,客户端浏览器必须支持SSL协议
7.request两个不常用的属性:TotalBytes,BinaryRead
TotalBytes获取客户端发出请求的数据字节大小
<% intCount=Request.TotalBytes
'返回客户端请求数据的字节大小%>
BinaryRead以二进制方式获取客户端用POST方法提交的数据
3.response对象
1.客户端向服务器发出一个HTTP请求信息,服务器端就会给客户端返回一个HTTP响应,在该信息中不仅包含了要输出到页面上的信息,也包括HTTP内容类型,字符集名称等信息,而这些信息都靠Response对象输出
4. Response对象的常用方法
1.write 直接输出信息给客户端
<%Response.write”业精于勤荒于嬉” %>
rem等价于
<%=”业精于勤荒于嬉”%>
2.redirect引导客户端至另外一个url位置(页面重定向)
<%response.redirect "http://www.sina.com.cn"
'引导至新浪网
response.redirect"3-1.asp"
'引导至站内网站
response.rediect strURL
'引导至变量表示的网址
%>
3.end结束程序运行
Asp程序碰到response.end语句,程序立即终止,response.end之前的页面内容发送的客户端
常用于调试程序
<%
Response.write”第一句”
Response.end
Response.write”第二句”
%>
4..plush立刻输出缓冲区中的页面内容
5.Response对象的两个属性
1.buffer属性与clear,plush方法
Buffer设置服务器端是否将页面先输出到缓冲区,其值为TRUE或false。
Buffer为TRUE为时它要把页面输出至缓冲区,当为Buffer为false时,服务器端不再向页面输出至缓冲区,会直接将页面输出至客户端浏览器
当Buffer为TRUE时,Clear方法用于将缓冲区中的当前页面全部清除,Flush方法用于将缓冲区中的当前页面内容立刻输出到客户端。
Clear与flush方法实例
<%
Response.write”第一句”
Response.Flush’立刻输出缓冲区中的内容’
Response.write”第二句”
Response.Clear’清除缓冲区中的内容’
Response.write”第三句”
%>
-Expires
2.BinaryWrite方法
在不进行任何字符串转换的情况下以二进制方式输出信息
语法:response.BinaryWrite 二进制变量数据
binaryRead与TotalBytes属性联合使用,以二进制方式获取客户端提交表单信息以二进制方式输出到页面上
6.response对象的几个不常用属于和方法
用于控制输出信息方式和添加HTTP响应信息
缓存页面:CacheControl属性设置是否允许缓冲
Public 允许缓冲
Private 不允许缓冲
创建HTTP响应信息的状态行信息
Status属性给客户端发送一个状态行信息
添加HTML文档头信息
AddHeader方法动态的添加文档头里面的相关信息
设置内容和字符集
Content-type和charset属性设置输出页面的内容类型和字符集
7.Response对象的数据集合
Cookies负责设置客户端浏览器中的cookies值
Cookies俗称甜饼,可以在客户端长期保存,它是服务器端发送到客户端的一些文本,保存在客户的硬盘,一般在Windows文件夹的临时文件夹下的Cookies文件里面
每个网站都有自己的Cookie,每个网站都只能读取自己的cookies
Cookies分为两种形式:会话Cookie和永久Cookie,前者是临时行的,只在浏览器打开时存在;后者是永久的保存与用户硬盘上并在有效日期之前可用
Asp利用response对象的cookies数据集合设置Cookies的值,
利用Request对象的Cookies数据集合来获取Cookie的值
利用response对象设置cookies数据集合
语法:
Response.Cookies(Cookiename)[(keyword)|.attribute]=value
Response的Cookies数据集合的主要属性
Expires:设定Cookie的有效日期,如果省略,则关闭浏览器时该Cookie则消失
设置不含关键子的单值Cookie
<%
Rem单值cookie,只要指定名称和其值即可
response.Cookies(“strName”)=”高航”
%>
设置多值Cookie 多值cookie类似于一个数组,可以包含多个元素,分别用关键字指定即可
<%
Response.Cookies(“strUser”)(“name”)=”刘江”
Response.Cookie(“strUser”)(“age”)=23
%>
设置cookiede 有效期
如果不设置有效期,则关闭浏览器后该Cookie就消失
<%
Rem 设置单值Cookie有效期
Response.Cookie(“strName”).Expires=#2012-1-8#
Rem 设置多值Cookie有效期
Response.Cookies(“strUser”).Expires=#2012-1-8#
%>
8.Request对象获取cookie数据集合
语法:
Request.Cookies(cookiename)[(keyword)|attribute]
获取单值Cookie的值
<%strName=Request.Cookies(“strName”) rem返回高航%>
获取含关键字多值Cookie的值
<%
strName =Requst.Cookies(“strName”)(“name”)
rem返回刘江
intUserAge=request.Cookies(“struser”)(“age”)
rem返回23
%>
判断Cookie是否含有关键字
Haskeys属性,返回TRUE含有关键字
返回false表示不含关键字
<%
blnResult=request.Cookie(“strName”).Haskeys
rem如果含有关键字strName则返回TRUE,否则返回false
%>