using System; using System.Collections.Generic; using System.Text; using System.Web; using System.Configuration; namespace Ant.Service.Utilities { /// /// cookies操作类 /// public class CookiesOperater { /// /// cookies的作用域 /// private static string domain = ConfigurationManager.AppSettings["domain"].Trim(); #region 加密写入cookies /// /// 写入cookies[默认加密] /// /// cookies名称 /// cookies的值 /// 有效期 public static void InnerAESCookie(string cname, string values, int days) { HttpCookie hc = HttpContext.Current.Request.Cookies.Get(cname); if (hc == null) { hc = new HttpCookie(cname); } hc.Expires = DateTime.Now.AddDays(days); hc.Value = AES.Encode(values); hc.Domain = domain; HttpContext.Current.Response.Cookies.Add(hc); } /// /// 写入cookies默认14天时间 (两周)[默认加密] /// /// cookies名称 /// cookies值 public static void InnerAESCookie(string cname, string values) { HttpCookie hc = HttpContext.Current.Request.Cookies.Get(cname); if (hc == null) { hc = new HttpCookie(cname); } hc.Expires = DateTime.Now.AddDays(14); hc.Value = AES.Encode(values); hc.Domain = domain; HttpContext.Current.Response.Cookies.Add(hc); } #endregion #region 不加密写入cookies /// /// 写入cookies[默认不加密] /// /// cookies名称 /// cookies的值 /// 有效期 public static void InnerCookie(string cname, string values, int days) { HttpCookie hc = HttpContext.Current.Request.Cookies.Get(cname); if (hc == null) { hc = new HttpCookie(cname); } hc.Expires = DateTime.Now.AddDays(days); hc.Value = values; hc.Domain = domain; HttpContext.Current.Response.Cookies.Add(hc); } /// /// 写入cookies默认14天时间 (两周)[默认不加密] /// /// cookies名称 /// cookies值 public static void InnerCookie(string cname, string values) { HttpCookie hc = HttpContext.Current.Request.Cookies.Get(cname); if (hc == null) { hc = new HttpCookie(cname); } hc.Expires = DateTime.Now.AddDays(14); hc.Value = values; hc.Domain = domain; HttpContext.Current.Response.Cookies.Add(hc); } #endregion #region 不解密读取cookies /// /// 通过cookies的名称获取cookies的值[默认不解密] /// /// /// public static string GetCookiesByName(string cname) { try { HttpCookie hc = HttpContext.Current.Request.Cookies.Get(cname); if (hc == null) { return string.Empty; } else { return hc.Value; } } catch { return null; } } #endregion #region 解密读取cookies /// /// 通过cookies的名称获取cookies的值[默认解密] /// /// /// public static string GetAESCookiesByName(string cname) { try { HttpCookie hc = HttpContext.Current.Request.Cookies.Get(cname); if (hc == null) { return string.Empty; } else { return AES.Decode(hc.Value); } } catch { return null; } } #endregion #region 删除cookies /// /// 删除 指定 cookies /// /// cookies的名称 /// public static void DelCookiesByName(string cname) { HttpCookie myCookie = HttpContext.Current.Request.Cookies[cname]; if (myCookie != null) { myCookie.Expires = DateTime.Now.AddDays(-14); myCookie.Value = null; myCookie.Domain = domain; HttpContext.Current.Response.Cookies.Add(myCookie); } else { myCookie = new HttpCookie(cname); myCookie.Expires = DateTime.Now.AddDays(-14); myCookie.Value = null; myCookie.Domain = domain; HttpContext.Current.Response.Cookies.Add(myCookie); } } #endregion } }