• CookieHelper


    using System;
    using System.Web;

    namespace MingYu.Utility
    {
    /// <summary>
    /// Cookie帮助类
    /// </summary>
    public class CookieHelper
    {
    /// <summary>
    /// 取Cookie
    /// </summary>
    /// <param name="name"></param>
    /// <returns></returns>
    public static HttpCookie Get(string name)
    {
    return HttpContext.Current.Request.Cookies[name];
    }

    /// <summary>
    /// 取Cookie值
    /// </summary>
    /// <param name="name"></param>
    /// <returns></returns>
    public static string GetValue(string name)
    {
    var httpCookie = Get(name);
    if (httpCookie != null)
    return httpCookie.Value;
    else
    return string.Empty;
    }

    /// <summary>
    /// 取Cookie值
    /// </summary>
    /// <param name="name"></param>
    /// <param name="key"></param>
    /// <returns></returns>
    public static string GetValue(string name, string key)
    {
    var httpCookie = Get(name);
    if (httpCookie != null)
    return httpCookie.Values[key];
    else
    return string.Empty;
    }

    /// <summary>
    /// 移除Cookie
    /// </summary>
    /// <param name="name"></param>
    public static void Remove(string name)
    {
    Remove(Get(name));
    }

    public static void Remove(HttpCookie cookie)
    {
    if (cookie != null)
    {
    cookie.Expires = DateTime.Now.AddDays(-1);
    Set(cookie);
    }
    }

    /// <summary>
    /// 新增Cookie
    /// </summary>
    /// <param name="name"></param>
    /// <param name="value"></param>
    /// <param name="expiresHours"></param>
    public static void Add(string name, string value, int expiresHours = 0)
    {
    var httpCookie = Get(name);
    if (httpCookie == null)
    httpCookie = Set(name);

    httpCookie.Value = value;
    Add(httpCookie, expiresHours: expiresHours);
    }

    /// <summary>
    /// 新增Cookie
    /// </summary>
    /// <param name="cookie"></param>
    /// <param name="expiresHours"></param>
    public static void Add(HttpCookie cookie, int expiresHours = 0, int minutes = 0)
    {
    string urlHost = HttpContext.Current.Request.Url.Host.ToLower();
    var expiresTime = DateTime.Now;
    if (expiresHours > 0)
    {
    expiresTime = expiresTime.AddHours(expiresHours);
    }
    if (minutes > 0)
    {
    expiresTime = expiresTime.AddMinutes(minutes);
    }
    if (expiresHours > 0 || minutes > 0)
    {
    cookie.Expires = expiresTime;
    }
    HttpContext.Current.Response.Cookies.Add(cookie);
    }

    public static HttpCookie Set(string name)
    {
    return new HttpCookie(name);
    }

    /// <summary>
    /// 更新Cookie
    /// </summary>
    /// <param name="cookie"></param>
    /// <param name="expiresHours"></param>
    public static void Set(HttpCookie cookie, int expiresHours = 0)
    {
    if (expiresHours > 0)
    cookie.Expires = DateTime.Now.AddHours(expiresHours);

    HttpContext.Current.Response.Cookies.Set(cookie);
    }
    }
    }

  • 相关阅读:
    git 存储stash 唏嘘
    Postman请求接口无响应解决案例(Could not send request) 唏嘘
    mybatis if判断字符串 唏嘘
    Mybatis if判断Integer类型的值 唏嘘
    mysql 按照中文首字母排序 唏嘘
    git add命令 唏嘘
    git stash drop stash@{0} error: unknown switch `e‘(window10) 唏嘘
    【原】3D游戏中的算法MMO游戏全视角3D相机,全地形中视觉障碍物自动缩进调整
    work diary
    高中物理错题本
  • 原文地址:https://www.cnblogs.com/zlj-rechio/p/cookie.html
Copyright © 2020-2023  润新知