我们将制作一个能够记住访问者姓名的页面,在这个小案例中,你将学会如何使用Request对象的Cookies、Form以及ServerVariables集合的值,还可以学习到如何使用Response对象来发送Cookies。

首先来看看程序代码:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>用Cookies记住访问者的姓名</title>
</head>
<body>
<%
Dim sUserName
sUserName = Trim(Request.Cookies("name"))
'判断name是否为空,不为空则输出name的值
If sUserName = "" Then
'判断是否是POST刚提交了表单,是的话则获取表单内容输出Cookies
If UCase(Trim(Request.ServerVariables("REQUEST_METHOD"))) = "POST" Then
sUserName = Trim(Request.Form("name"))
Response.Cookies("name") = sUserName
Response.Cookies("name").Expires = DateAdd("d", 1, Now)
'Cookies一天后过期
Response.Write("我已经记住您的姓名了!")
Else
'否则显示表单,让用户提交表单
%>
<form method="post" action="">
请告诉我您的姓名 : <input name="name" type="text"/>
<input type="submit" value="提交" />
</form>
<%
End If
Else
Response.Write("您好," & sUserName)
End If
%>
</body>
</html>

首次运行,无法获取 Cookies 信息,显示表单,让用户提交,如下图:

提交表单,还是POST到当前ASP页面,因为还是无法获取Cookies,所以显示提交表单成功的页面,如下图:

再次刷新当前页面 RequestCookies.asp ,因为可以获取到Cookies,直接显示访问者姓名了。


我们再详细讲解下让用户输入姓名并保存的部分,首先获取ServerVariables变量REQUEST_METHOD的值,这个值标识了当前页面的请求方式,如果是POST方式,说明现在正在想此页面提交表单,这时就要获取表单的值,并且将其使用Response.Cookies集合来向客户端输出Cookies,否则显示供用户填写姓名的HTML代码。

小知识

Trim函数删除字符串两边的空格,LTrim函数删除字符串左侧空格,RTrim函数删除字符串右侧空格。

UCase函数把指定字符串转化为大写,LCase函数把指定字符串转化为小写。

示例代码下载

RequestCookies.rar

ASP入门(九)-Request对象小案例的更多相关文章

  1. javascript入门视频第一天 小案例制作 零基础开始学习javascript

    JavaScript 是我们网页设计师必备的技能之一.我们主要用javascript来写的是网页特效.我们从零基础开始学习javascript入门. 但是,好的同学刚开始不知道怎么学习,接触js,因此 ...

  2. Python 在windows上安装BeautifulSoup和request以及小案例

    Python以及PyCharm安装成功后,操作如下: 此时,代码import requests不报错了. 那么,Python 在windows上安装BeautifulSoup,怎么操作呢? 1. 打开 ...

  3. 02SpringMvc_springmvc快速入门小案例(XML版本)

    这篇文章中,我们要写一个入门案例,去整体了解整个SpringMVC. 先给出整个项目的结构图:

  4. ASP入门(十二)-Application对象

    在一起协同工作以完成某项任务的一组ASP文件称为一个应用程序.Application 对象用于把这些文件捆绑在一起. Application 对象用于在整个应用程序生存期间保存信息. Applicat ...

  5. Asp.net内置对象之Request对象(概述及应用)

    Request对象主要用于获取来自客户端的数据,如用户填入表单的数据.保存在客户端的Cookie等,本文将围绕Request对象,讲解其的主要作用:读取窗体变量.读取查询字符串变量.取得Web服务器端 ...

  6. Hibernate的介绍及入门小案例

    1.Hibernate的诞生 在以前使用传统的JDBC开发应用系统时,如果是小型应用系统,并不觉得有什么麻烦,但是对于大型应用系统的开发,使用JDBC就会显得力不从心,例如对几十,几百张包含几十个字段 ...

  7. asp.net中Response对象鱼Request对象

    在asp.net中Response与Request对象是两个常用的对象,虽然他们长得有点像,但是作用却是截然不同,我们来看一下他们他们都有哪些不同. 一.Response对象主要作用:像浏览器输出信息 ...

  8. 初识 Asp.Net内置对象之Request对象

    Request对象 Request对象用于检索从浏览器向服务器所发送的请求信息.它提供对当前页请求的访问,包括标题,Cookie,客户端证书等等.它也与HTTP协议的请求消息对应. Request对象 ...

  9. ch1-vuejs基础入门(hw v-bind v-if v-for v-on v-model 应用组件简介 小案例)

    1 hello world 引入vue.min.js 代码: ----2.0+版本 <div id="test"> {{str}} </div> <s ...

随机推荐

  1. CAS服务器配置

    参考文献: http://sucre.blog.51cto.com/1084905/683624 1.安装部署CAS Server 从官网下载CAS Server,今天发现CAS Server的官网居 ...

  2. Revit API取得系统族普通族几何信息的方法

    系统族,可以直接转化为对应的类(Wall,Duct)然后取得几何信息,普通族需要转化为FamilyInstance ))         {           TaskDialog.Show()   ...

  3. 在ASP.NET MVC中使用Knockout实践09,自定义绑定

    Knockout真正强大之处在于绑定机制,通过data-bind属性值体现绑定,不仅可以绑定值,还可以绑定事件,甚至可以自定义绑定. 从一个例子看Knockou的绑定机制 假设想给一个button元素 ...

  4. 在ASP.NET MVC中使用Knockout实践05,基本验证

    本篇体验View Model验证.Knockout的subscribe方法能为View Model成员注册验证规则. @{ ViewBag.Title = "Index"; Lay ...

  5. cocos2d-x基本元素

    from://http://www.cnblogs.com/ArmyShen/p/3239664.html 1.CCDirector(导演类) 控制游戏流程的主要类,主要负责设定游戏窗口.切换场景.暂 ...

  6. 详细解读Android中的搜索框(二)—— Search Dialog

    Search Dialog是提供搜索的控件之一,还有一个是上次小例子给出的searchView,关于SearchView的东西后面会说到.本次先从Search Dialog说起,让大家慢慢理解andr ...

  7. 解决 Attempting to destroy the window while drawing!

    当对Dialog进行关闭时,如果有大量的操作,比如动画.绘图什么的,就可能出现这样的错误 Attempting to destroy the window while drawing! 比如,我在自定 ...

  8. Pandas快速入门(一)

    快速使用 bogon:Documents rousseau$ ipython --pylab Python 3.6.0 (v3.6.0:41df79263a11, Dec 22 2016, 17:23 ...

  9. smb与samba

    为了使Windows 主机间的资源能够共享,微软于1980年开发了SMB(Server Message Block)通信协议,并通过SMB通信协议,使网络上各台主机之间能够共享文件.打印机等资源.目前 ...

  10. var this.value 可在任意地方 声明 类成员变量。如果可以利用在C++ 那该有多好啊

    var this.value 可在任意地方 声明 类成员变量.如果可以利用在C++ 那该有多好啊