程序中保存状态的方式之 Cookies,之前写过一篇关于ViewState的。现在继续总结Cookies方式的

新建的测试页面login

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Login" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"><title></title><script type="text/javascript">function checkSubmit() {var user = document.getElementById("txtName");var reg = /^\s*$/;if (reg.test(user.value)) {alert("请输入用户名!");user.focus();return false;}var pwd = document.getElementById("txtPwd");if (reg.test(pwd.value)) {alert("请输入密码!");pwd.focus();return false;}return true;}</script>
</head>
<body><form id="form1" runat="server">登录名:<asp:TextBox ID="txtName" runat="server"></asp:TextBox>密码:<asp:TextBox ID="txtPwd" runat="server"></asp:TextBox><asp:Button ID="btn_login" runat="server" Text="登录" οnclick="btn_login_Click"  OnClientClick="return checkSubmit()"/></form>
</body>
</html>

login.aspx

后台.cs文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;public partial class Login : System.Web.UI.Page
{protected void Page_Load(object sender, EventArgs e){}protected void btn_login_Click(object sender, EventArgs e){string name = txtName.Text.Trim();string pwd = txtPwd.Text.Trim();if (name == string.Empty){MessageBox.Show(this, "请输入用户名!");return;}if (pwd == string.Empty){MessageBox.Show(this, "请输入密码!");return;}if (name == "test" && pwd == "123456"){Response.Cookies.Add(new HttpCookie("comID", "100"));Response.Cookies["comID"].Expires = DateTime.Now.AddDays(30);//设置过期时间,30天Response.Redirect("获取cookies.aspx");}else {MessageBox.Show(this,"用户名密码错误!");}}}

获取cookies.aspx页面后台

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;public partial class 获取cookies : System.Web.UI.Page
{public string comid = "";protected void Page_Load(object sender, EventArgs e){if (Request.Cookies["comID"] != null && Request.Cookies["comID"].Value != ""){comid = Request.Cookies["comID"].Value;//获取存入的comid
        }MessageBox.Show(this, "登录id=" + comid);}
}

删除Cookies

Response.Cookies[CountAdmin].Expires = DateTime.Now.AddDays(-1);//删除cookie

我登录的时候存入了100,访问login.aspx就会跳转到获取cookies页面,提示登录id=100,效果图如下:

转载于:https://www.cnblogs.com/chenlihong-886/p/6246073.html

程序中保存状态的方式之Cookies相关推荐

  1. Redux简介以及Redux应用程序中的状态更新方式

    by Syeda Aimen Batool 通过Syeda Aimen Batool Redux简介以及Redux应用程序中的状态更新方式 (An intro to Redux and how sta ...

  2. 在C 函数中保存状态:registry、reference和upvalues

    在C函数中保存状态:registry.reference和upvalues      C函数能够通过堆栈来和Lua交换数据,但有时候C函数须要在函数体的作用域之外保存某些Lua数据.那么我们想到全局变 ...

  3. 如何简化React应用程序中的状态-轻松实现Redux

    by Arnel Enero 通过Arnel Enero 如何简化React应用程序中的状态-轻松实现Redux (How to simplify state in your React app - ...

  4. Flutter实践:深入探索 flutter 中的状态管理方式(1)

    利用 Flutter 内置的许多控件我们可以打造出一款不仅漂亮而且完美跨平台的 App 外壳,我利用其特性完成了类似知乎App的UI界面,然而一款完整的应用程序显然不止有外壳这么简单.填充在外壳里面的 ...

  5. 在 DotNetCore 3.0 程序中使用通用协议方式启动文件关联应用

    问题描述 在传统的基于 .NET Framework 的 WPF 程序中,我们可以使用如下代码段启动相关的默认应用: Copy # 启动默认文本编辑器打开 helloworld.txt Process ...

  6. 浏览器中java在什么位置,在基于浏览器的应用程序中保存JWT的位置以及如何使用它...

    选择存储更多的是权衡,而不是试图找到明确的最佳选择 . 我们来看几个选项: 选项1 - Web存储(localStorage或sessionStorage) 优点 浏览器不会自动包含从Web存储到HT ...

  7. Spring MVC不要在@Service bean中保存状态

    先看这么一段代码: @Service public class AccountService {private String message;public void foo1() {if (true) ...

  8. php进攻教程,如何对PHP程序中的常见漏洞进行攻击(下)_php基

    如何对PHP程序中的常见漏洞进行攻击(下)_php基 发布时间:2016-06-17 来源: 点击: 次 如何对PHP程序中的常见漏洞进行攻击(下) 翻译:analysist(分析家) 来源:http ...

  9. 在WPF程序中使用多线程技术

    在WPF应用程序中使用多线程的方式与Windows Forms很类似,区别在于,如果需要更新主线程UI上面的元素,需要用一个特殊的方法(this.Dispatcher.Invoke) 下面是一个简单的 ...

最新文章

  1. 10个你必须知道的ios框架
  2. Angular文件上传---fileUpload的使用
  3. TabelDiff实用工具
  4. 【鬼网络】之NFS共享服务
  5. DOM(document object model),文档对象模型
  6. java5新特性静态引用、foreach、自动装箱和泛型枚举以及可变参数的总结
  7. LeetCode 278. First Bad Version
  8. 单源最短路径——Dijkstra代码实现
  9. 在 Mac OS X 下启用超级帐户(root)
  10. ubuntu安装nvidia显卡驱动+cuda+cudnn
  11. C语言程序书写中 每行必须有分号,C语言课后习题答案
  12. AD18 设定PCB板子大小
  13. 【无人机系统】四轴飞行器及其UAV飞控系统 - 桂林电子科技大学信息科技学院 电子工程系(一)
  14. VMware esxi 阵列卡驱动下载
  15. delphi关于try的正确句法结构
  16. 用于细粒度图像分类的通道交互网络
  17. android手机定时截屏软件,最好用的截图软件 安卓手机截图软件横评对比
  18. CentOS7图形界面启动报错unable to connect to X server
  19. 生活-四种游泳姿势的动画图解
  20. GitLab搭建局域网改外网

热门文章

  1. 二次函数的求根公式的几何原理
  2. JavaScript对象的chapterI
  3. UEditor添加自定义弹窗 插入音频地址
  4. 今天学会了如何察看SSDT里面的东西、修改里面的地址
  5. [Java]Annotation元数据的几个应用
  6. Linux基础知识--进程管理与计划任务
  7. MyBatis 几个常用的 jdbcType数据
  8. 《TCP/IP详解》之二:流式数据交互
  9. IN和EXISTS的性能对比结论
  10. ubuntu下快速安装adb,fastboot的方法。