ASP入门(九)-Request对象小案例
我们将制作一个能够记住访问者姓名的页面,在这个小案例中,你将学会如何使用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函数把指定字符串转化为小写。
示例代码下载
ASP入门(九)-Request对象小案例的更多相关文章
- javascript入门视频第一天 小案例制作 零基础开始学习javascript
JavaScript 是我们网页设计师必备的技能之一.我们主要用javascript来写的是网页特效.我们从零基础开始学习javascript入门. 但是,好的同学刚开始不知道怎么学习,接触js,因此 ...
- Python 在windows上安装BeautifulSoup和request以及小案例
Python以及PyCharm安装成功后,操作如下: 此时,代码import requests不报错了. 那么,Python 在windows上安装BeautifulSoup,怎么操作呢? 1. 打开 ...
- 02SpringMvc_springmvc快速入门小案例(XML版本)
这篇文章中,我们要写一个入门案例,去整体了解整个SpringMVC. 先给出整个项目的结构图:
- ASP入门(十二)-Application对象
在一起协同工作以完成某项任务的一组ASP文件称为一个应用程序.Application 对象用于把这些文件捆绑在一起. Application 对象用于在整个应用程序生存期间保存信息. Applicat ...
- Asp.net内置对象之Request对象(概述及应用)
Request对象主要用于获取来自客户端的数据,如用户填入表单的数据.保存在客户端的Cookie等,本文将围绕Request对象,讲解其的主要作用:读取窗体变量.读取查询字符串变量.取得Web服务器端 ...
- Hibernate的介绍及入门小案例
1.Hibernate的诞生 在以前使用传统的JDBC开发应用系统时,如果是小型应用系统,并不觉得有什么麻烦,但是对于大型应用系统的开发,使用JDBC就会显得力不从心,例如对几十,几百张包含几十个字段 ...
- asp.net中Response对象鱼Request对象
在asp.net中Response与Request对象是两个常用的对象,虽然他们长得有点像,但是作用却是截然不同,我们来看一下他们他们都有哪些不同. 一.Response对象主要作用:像浏览器输出信息 ...
- 初识 Asp.Net内置对象之Request对象
Request对象 Request对象用于检索从浏览器向服务器所发送的请求信息.它提供对当前页请求的访问,包括标题,Cookie,客户端证书等等.它也与HTTP协议的请求消息对应. Request对象 ...
- 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 ...
随机推荐
- MFC之菜单
1菜单与菜单项的操作 //获取菜单指针----CWnd::GetMenu() //GetSubMenu()获取子菜单 /CheckMenuItem()加入/取消标记 GetMenu()->Get ...
- .NET中常见的内存泄漏和解决办法
在.NET中,虽然CLR的GC垃圾回收器帮我们自动回收托管堆对象,释放内存,最大程度避免了"内存泄漏"(应用程序所占用的内存没有得到及时释放),但.NET应用程序"内存泄 ...
- C#中的Hashtable
richTextBox1.Text = ""; Hashtable ht = new Hashtable(); ht.Add("); ht.Add("); ht ...
- 【spring boot】spring boot 前台GET请求,传递时间类型的字符串,后台无法解析,报错:Failed to convert from type [java.lang.String] to type [java.util.Date]
spring boot 前台GET请求,传递时间类型的字符串,后台无法解析,报错:Failed to convert from type [java.lang.String] to type [jav ...
- 用Service实现断点下载
整体的思路: 在下载文件时,将进度写入数据库,同一时候通知该ContentProvider的观察者更新页面,这个通知过程不要太频繁.我设置了10次,否则页面会灰常卡. 假设异常中断(网络中断或程 ...
- java List转换为字符串并加入分隔符的一些方法总结
方法一: public String listToString(List list, char separator) { StringBuilder sb = new StringBuilder(); ...
- Unreal Engine 4 减少编辑器的帧率
默认的,打开UE4的编辑器,显卡会以全速渲染场景,在我的机器上.是120FPS. 整个机器就開始轰鸣了.资源占用太凶了.事实上全然不是必需这样,帧率在60左右就足够了. 那怎么改动呢,试了非常多办法. ...
- 分析 Java heap dump工具之IBM HeapAnalyzer
IBM HeapAnalyzer是一款免费的JVM内存堆的图形分析工具,它可以有效的列举堆的内存使用状况,帮助分析Java内存泄漏的原因. 功能与MAT类似. 1.下载 https://www.ibm ...
- QT中文乱码与国际化支持
QT国际化支持 Qt内部采用的全Unicode编码,这从根本上保证了多国语界面实现的正确性和便捷性.Qt本身提供的linguist工具,用来实现翻译过程十分方便.MFC中利用资源DLL切换资源,或 ...
- 附9 elasticsearch-curator + Linux定时任务
官网教程入口:https://www.elastic.co/guide/en/elasticsearch/client/curator/current/index.html 一.下载安装 下载:sud ...