.net Cookie的操作

时间:2022-10-29 00:38:27
using System;
using System.Collections.Generic;
using System.Web; namespace Zhong.Core
{
/// <summary>
/// Cookie操作类
/// </summary>
public class CookieHelper
{
private static readonly string CookieName = "Zhong";
/// <summary>
/// 设置Cookie
/// </summary>
/// <param name="name">名称</param>
/// <param name="values">键/值对</param>
/// <param name="expires">过期超时时间(秒),为0时不设置过期时间</param>
/// <param name="domain">域名</param>
/// <param name="path">路径</param>
public static void SetCookie(string name, Dictionary<string, string> values, int expires, string domain = null, string path = null)
{
HttpCookie cookie = HttpContext.Current.Response.Cookies[name];
if (cookie == null)
{
cookie = new HttpCookie(name);
}
foreach (KeyValuePair<string, string> kv in values)
{
cookie.Values.Add(kv.Key, kv.Value);
}
if (domain != null)
{
cookie.Domain = domain;
}
if (path != null)
{
cookie.Path = path;
}
if (expires != )
{
cookie.Expires = DateTime.Now.AddSeconds(expires); //过期时间
}
HttpContext.Current.Response.Cookies.Add(cookie);
}
/// <summary>
/// 设置Cookie
/// </summary>
/// <param name="key">键</param>
/// <param name="value">值</param>
public static void SetCookie(string key, string value)
{
SetCookie(CookieName, new Dictionary<string, string> { { key, value } }, );
}
/// <summary>
/// 根据名称与键读取Cookie
/// </summary>
/// <param name="name">名称</param>
/// <param name="key">键</param>
/// <returns></returns>
public static string GetCookie(string name, string key)
{
string returnVal = null;
HttpCookie cookie = HttpContext.Current.Request.Cookies[name];
if (cookie != null)
{
returnVal = cookie[key];
}
return returnVal;
}
/// <summary>
/// 根据键读取Cookie
/// </summary>
/// <param name="key">键</param>
/// <returns></returns>
public static string GetCookie(string key)
{
return GetCookie(CookieName, key);
}
/// <summary>
/// 根据名称获取Cookie
/// </summary>
/// <param name="name">名称</param>
/// <returns></returns>
public static string GetCookieByName(string name)
{
string returnVal = null;
HttpCookie cookie = HttpContext.Current.Request.Cookies[name];
if (cookie!= null)
{
returnVal = cookie.Value;
}
return returnVal;
}
/// <summary>
/// 删除Cookie
/// </summary>
/// <param name="name">名称</param>
public static void DeleteCookie(string name)
{
HttpCookie cookie = HttpContext.Current.Response.Cookies[name];
if (cookie != null)
{
cookie.Expires = DateTime.Now.AddYears(-);
cookie.Values.Clear();
}
HttpContext.Current.Response.Cookies.Add(cookie);
}
}
}

.net Cookie的操作的更多相关文章

  1. jquery&period;cookie&period;js 操作cookie实现记住密码功能的实现代码

    jquery.cookie.js操作cookie实现记住密码功能,很简单很强大,喜欢的朋友可以参考下.   复制代码代码如下: //初始化页面时验证是否记住了密码 $(document).ready( ...

  2. java对cookie的操作

    java对cookie的操作比较简单,主要介绍下建立cookie和读取cookie,以及如何设定cookie的生命周期和cookie的路径问题. 建立一个无生命周期的cookie,即随着浏览器的关闭即 ...

  3. Jquery对Cookie的操作

    第一步:先引用jQuery的插件jquery-1.9.1.min.js 第二步:引用jquery.cookie.js插件 下对cookie的操作: $.cookie("cookieName& ...

  4. cookie 常用操作

    Cookie:指网站为了辨别用户身份.进行会话跟踪而储存在用户本地的 key/value 型数据(通常经过加密), cookie key/value 型数据可以由服务器端自己定义. Cookie是由服 ...

  5. 2&period;19 cookie相关操作

    2.19 cookie相关操作 前言虽然cookie相关操作在平常ui自动化中用得少,偶尔也会用到,比如登录有图形验证码,可以通过绕过验证码方式,添加cookie方法登录.登录后换账号登录时候,也可作 ...

  6. js 第四章 cookie的操作

    js 第四章 cookie的操作 一.学习要点 掌握cookie的简单应用 二. js 第四章 cookie的操作 了解cookie 什么是cookie? cookie 是存储于访问者的计算机中的变量 ...

  7. 在js中将map对象转换成json 和 js对cookie的操作

    在js中将map对象转换成json //msp转objectlet obj= Object.create(null); for (let[k,v] of map) { obj[k] = v; }//o ...

  8. js对cookie的操作:读、写、删

    js读写cookie //JS操作cookies方法!//写cookiesfunction setCookie(name,value){var Days = 30;var exp = new Date ...

  9. yii cookie &comma;session 操作

    一,在Yii中使用session 1,CHttpSession 与原生态php5的session使用差别是,php5使用session_start();$_session['key'] = $valu ...

  10. selenium webdriver&lpar;6&rpar;---cookie相关操作

    介绍selenium操作cookie之前,先简单介绍一下cookie的基础知识 cookie cookie一般用来识别用户身份和记录用户状态,存储在客户端电脑上.IE的cookie文件路径(win7) ...

随机推荐

  1. jquery特效大全

    http://www.oschina.net/project/tag/300/jquery-effects

  2. SequenceSum

    SequenceSum Sum of 'n' Numbers sum_of_n (or SequenceSum.sumOfN in Java, SequenceSum.SumOfN in C#) ta ...

  3. C&num; 让textbox 只能输入数字的方法

    使用textBox控件的KeyPress事件 private void textBox_KeyPress(object sender, KeyPressEventArgs e) { if (e.Key ...

  4. 遍历系统中所有的进程,可根据名字或ID查找某一个线程

    我们这根据名字查找进程,获取其ID /*@brief 获取找到的与指定进程名相符的第一个进程ID * @param [in] cpszExeFileName 进程可执行文件名(不带路径) * @par ...

  5. Scala中的柯里化

    一.初识Currying柯里化   柯里化(Currying)技术 Christopher Strachey 以逻辑学家 Haskell Curry 命名的(尽管它是 Moses Schnfinkel ...

  6. 设置时间同步(Linux&comma;Solaris)

    经过网上各种搜索,将LINUX平台及solaris平台的时间同步整理如下: 主机情况:应用:2台LINUX服务器 redhat 5.5 内网数据库:2台Solaris服务器 Solaris 10 内网 ...

  7. 学霸网站之NABC

    1.Need 本次学霸系统的设计是基于学长的版本,在此基础上,我们准备进一步完善已有版块,在用户信息管理.提问.搜索.分类.评论.个性化界面.用户反馈.娱乐.积分获取等方面加入新的功能. 一.用户信息 ...

  8. mysql数据库优化课程---17、mysql索引优化

    mysql数据库优化课程---17.mysql索引优化 一.总结 一句话总结:一些字段可能会使索引失效,比如like,or等 1.check表监测的使用场景是什么? 视图 视图建立在两个表上, 删除了 ...

  9. c&num; Hash一致算法实现负载均衡

    开篇吹牛..... 不吹了,因为我不擅长算法,就不胡说八道了. 现在一般的实现负载均衡,主要采用2种方法: 1.轮训    2.负载均衡算*训就不说了,负载均衡现在一般采用HASH一致算法 不多说 ...

  10. 关于redis的思考

    集群版本的redis主从复制 也可以实现集群 但是不是很好 集群版redis主从复制版本集群 Spring Boot整合Redi事务 Spring Boot+Redis+Ehcache实现二级缓存 S ...