
第章Request和Response对象.ppt
32页第5章 Request和Response对象讲解提纲讲解提纲•5.1 5.1 对象知识简介对象知识简介•5.2 5.2 利用利用RequestRequest对象从客户端获得信息对象从客户端获得信息– –5.2.1 Request5.2.1 Request对象简介对象简介– –5.2.2 5.2.2 使用使用FormForm获取方法获取方法– –5.2.3 5.2.3 使用使用QueryStringQueryString获取方法获取方法– –5.2.4 5.2.4 使用使用ServerVariablesServerVariables获取方法获取方法•5.35.3利用利用ResponseResponse对象向客户端输出信息对象向客户端输出信息 – –5.3.1 Response5.3.1 Response对象简介对象简介– –5.3.2 5.3.2 使用使用WriteWrite方法输出信息方法输出信息– –5.3.3 5.3.3 使用使用RedirectRedirect方法引导客户端至另一个方法引导客户端至另一个URLURL位置位置– –5.3.4 5.3.4 关于关于BufferBuffer属性属性– –5.3.5 5.3.5 使用使用EndEnd方法结束程序方法结束程序•5.45.4使用使用CookiesCookies– –5.4.15.4.1使用使用ResponseResponse对象设置对象设置CookiesCookies– –5.4.25.4.2使用使用RequestRequest对象获取对象获取CookiesCookies5.1 对象知识简介•什么叫对象?什么叫对象?•对象的属性、方法和事件对象的属性、方法和事件 •ASPASP几个重要的内部对象几个重要的内部对象– –RequestRequest对象对象——从客户端获取数据从客户端获取数据– –ResponseResponse对象对象------向客户端输出数据向客户端输出数据 – –SessionSession对象对象------记载特定客户的信息记载特定客户的信息– –ApplicationApplication对象对象------记载同一个应用程序中的所有用户之记载同一个应用程序中的所有用户之间的共享信息间的共享信息 – –ServerServer对象对象------创建创建COMCOM对象和对象和ScriptingScripting组件等组件等 5.2 利用Request对象从客户端获得信息 •通常客户端通过浏览器在表单里填的信息怎么样才能传到服务器端呢?•利用Request对象就可以让服务器轻松取得客户端的信息。
5.2.1 Request对象简介•RequestRequest对象共有五种获取方法,分别是:对象共有五种获取方法,分别是: QueryStringQueryString、、FormForm、、CookiesCookies、、ServerVariablesServerVariables、、ClientCertificateClientCertificate•语法:语法:Request.Request.获取方法(参数)获取方法(参数)例如:例如:<%<%Request.Form(“user_nameRequest.Form(“user_name”) ‘”) ‘获得表单中的用户名获得表单中的用户名 %> %>5.2.2 使用Form获取方法•在ASP中,获取FORM表单中的信息就是用Form获取方法来实现的•语法:Request.Form(参数)Form方法示例Test5_1.aspTest5_2.aspForm方法示例2Test5_3.aspTest5_4.aspForm方法示例3Test5_5.aspForm方法示例4Test5_6.aspForm方法示例5Test5_7.aspTest5_8.asp5.2.3 使用QueryString获取方法•还可以利用QueryString获取方法取回标识在URL后面的所有返回的变量及其值;–< age=22”> •为什么要用该获取方法?•语法:–Request.QuerystringRequest.Querystring(“(“参数参数” ”) )QueryString方法示例Test4_9.aspTest4_10.asp5.2.4 使用ServerVariables获取方法•利用该方法可以获取服务端或客户端的一些信息,如来访者的IP地址•语法:•Request.ServerVariables(“参数”)ServerVariables方法示例Test4_11.asp5.3利用Response对象向客户端输出信息 •ASP是要生成动态网页,根据客户端的不同请求输出相应的信息,这就要靠Response对象来实现了 •以前已经多次用到Response.write方法了5.3.1 Response对象简介•ASPASP的内部对象的内部对象ResponseResponse用来控制送出给客户端的用来控制送出给客户端的信息,信息,ResponseResponse对象可以使用的方法有下面三个:对象可以使用的方法有下面三个:– –1 1..WriteWrite::直接送出信息给客户端。
直接送出信息给客户端– –2 2..RedirectRedirect::引导客户端至另一个引导客户端至另一个URLURL位置– –3. End 3. End :结束程序运行:结束程序运行– –4 4..CookiesCookies::设置设置CookiesCookies值•可以使用的属性有下面两个:可以使用的属性有下面两个:– –1 1..BufferBuffer::设置为缓冲信息设置为缓冲信息– –2 2..ContentTypeContentType::控制送出的文件类型控制送出的文件类型5.3.2 使用Write方法输出信息•向客户端输出信息•语法: –Response.WriteResponse.Write 变量数据或字符串变量数据或字符串•简略语法:–<%=<%=变量数据或字符串变量数据或字符串%>%>Write方法示例Test4_12.asp5.3.3 使用Redirect方法引导客户端至另一个URL位置•为什么要使用该方法?•语法:–Response.RedirectResponse.Redirect URLURL变量或字符串变量或字符串•例子:–Response.redirectResponse.redirect “ “http://www.””–Response.redirectResponse.redirect “test4_12.asp” “test4_12.asp”–Response.redirectResponse.redirect urlurl ‘ ‘变量变量Redirect方法示例Test4_13.asp5.3.4 关于Buffer属性•BufferBuffer属性,它的值为属性,它的值为TrueTrue或或FalseFalse,,默认为默认为truetrue。
•当当BufferBuffer为为TrueTrue时,它要把页面输出至缓冲区,当时,它要把页面输出至缓冲区,当正在输出时,服务器端不响应客户端,除非所有正在输出时,服务器端不响应客户端,除非所有的服务器端文件被处理完毕的服务器端文件被处理完毕•当当BufferBuffer为为FalseFalse时,服务器端不再将页面输出至时,服务器端不再将页面输出至缓冲区,会直接将页面输出至客户端浏览器缓冲区,会直接将页面输出至客户端浏览器•想一想为什么要在想一想为什么要在redirectredirect方法中用方法中用BufferBuffer属性?属性?5.3.5 使用End方法结束程序•EndEnd方法可以停止处理方法可以停止处理ASPASP程序程序•语法:语法:– –Response.EndResponse.End•想一想,它有什么用?想一想,它有什么用?End方法示例Test5_14.asp5.4使用Cookies•俗称甜饼,是服务器端利用客户端机器保留信息一种方法•每个应用程序(网站)都可以有自己的Cookies,但只能读取自己的Cookies5.4.1使用Response对象设置Cookies•利用Response对象的Cookies方法可以设置Cookies。
•设置不含关键字的Cookies–<%<%–Response.Cookies(“user_nameResponse.Cookies(“user_name”)=“”)=“章剑章剑” ”–%>%>5.4.1使用Response对象设置Cookies•设置含关键字的Cookies–<%<%–Response.Cookies(“user_name”)(“name1”)=“Response.Cookies(“user_name”)(“name1”)=“张云张云” ”–Response.Cookies(“user_name”)(“name2”)=“Response.Cookies(“user_name”)(“name2”)=“苏方苏方” ”–%>%>5.4.1使用Response对象设置Cookies•设置Cookies的有效期,什么时候失效–<%<%–Response.Cookies(“user_nameResponse.Cookies(“user_name”)=“”)=“章剑章剑” ”–Response.Cookies(“user_name”).expiresResponse.Cookies(“user_name”).expires=#20=#2004-1-1#04-1-1#–%>%>5.4.2使用Request对象获取Cookies•利用Request对象的Cookies获取方法可以获取Cookies。
•获取不含关键字的Cookies–<%<%–User_nameUser_name= =Request.Cookies(“user_nameRequest.Cookies(“user_name”)”)–%>%>5.4.2使用Request对象获取Cookies•获取含关键字的Cookies–<%<%–name1=name1=Request.Cookies(“user_name”)(“name1”Request.Cookies(“user_name”)(“name1”) )–name2=name2=Request.Cookies(“user_name”)(“name2”Request.Cookies(“user_name”)(“name2”) )–%>%>Cookies示例1Test4_15.aspTest4_16.aspCookies示例2Test4_17.asp本讲练习•1.请编写程序,根据客户的选择,分别重定向到教师或学生页面提示,综合利用表单和Redirect方法)•2.请编写一个注册表单,客户填写注册信息后,将有关内容显示在页面上提示,以后学了数据库知识,就可以保存到数据库里了)。
