zoukankan      html  css  js  c++  java
  • C# (Cookie)基本操作

    在Common中新建一个CookieHelper,全局调用

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Web;
    
    namespace Common {
        public class CookieHelper {
            /// <summary>
            /// 设置cookie
            /// </summary>
            /// <param name="cookieName">cookie名称</param>
            /// <param name="cookieValue">cookie值</param>
            /// <param name="domain">作用域,为空就不写入作用域</param>
            public static void SetCookie(String cookieName, String cookieValue, string domain) {
                if (String.IsNullOrEmpty(cookieName) || String.IsNullOrEmpty(cookieValue)) return;
                if (HttpContext.Current != null) {
                    HttpCookie cookie = new HttpCookie(cookieName, cookieValue);
                    if (domain.Length > 0) {
                        cookie.Domain = domain;
                    }
                    cookie.HttpOnly = true;
                    HttpContext.Current.Response.Cookies.Add(cookie);
                }
            }
            /// <summary>
            /// 设置cookie
            /// </summary>
            /// <param name="cookieName">cookie名称</param>
            /// <param name="cookieValue">cookie值</param>
            /// <param name="domain">作用域,为空就不写入作用域</param>
            /// <param name="day">有效时间</param>
            public static void SetCookie(String cookieName, String cookieValue, string domain, int day) {
                if (String.IsNullOrEmpty(cookieName) || String.IsNullOrEmpty(cookieValue)) return;
                if (HttpContext.Current != null) {
                    HttpCookie cookie = new HttpCookie(cookieName, cookieValue);
                    if (domain.Length > 0) {
                        cookie.Domain = domain;
                    }
                    cookie.HttpOnly = true;
                    cookie.Expires = DateTime.Now.AddDays(day);
                    HttpContext.Current.Response.Cookies.Add(cookie);
                }
            }
            /// <summary>
            /// 设置cookie过期
            /// </summary>
            /// <param name="cookieName">需要过期的cookie名称</param>
            public static void ExpireCookie(String cookieName) {
                if (String.IsNullOrEmpty(cookieName)) return;
                if (HttpContext.Current != null) {
                    HttpCookie cookie = new HttpCookie(cookieName, string.Empty);
                    cookie.HttpOnly = true;
                    cookie.Expires = DateTime.Now.AddYears(-5);
                    HttpContext.Current.Response.Cookies.Add(cookie);
                }
            }
            /// <summary>
            /// 获取对应Cookie名称的值
            /// </summary>
            /// <param name="cookieName">Cookie 的名称</param>
            /// <returns></returns>
            public static string GetCookie(string cookieName) {
                if (string.IsNullOrEmpty(cookieName)) return string.Empty;
                if (System.Web.HttpContext.Current == null) return string.Empty;
                if (System.Web.HttpContext.Current.Request.Cookies[cookieName] == null) return string.Empty;
                else return System.Web.HttpContext.Current.Request.Cookies[cookieName].Value;
            }
            /// <summary>
            /// 判断对应的Cookie是否存在
            /// </summary>
            /// <param name="cookieName">Cookie 的名称</param>
            /// <returns></returns>
            public static bool ExistCookie(string cookieName) {
    
                if (string.IsNullOrEmpty(cookieName) || System.Web.HttpContext.Current == null) return false;
                if (System.Web.HttpContext.Current.Request.Cookies[cookieName] == null) return false;
                if (System.Web.HttpContext.Current.Request.Cookies[cookieName].Value == null) return false;
                return (System.Web.HttpContext.Current.Request.Cookies[cookieName].Value.Length > 0);
            }
        }
    }
    

      

  • 相关阅读:
    How to run a batch file each time the computer loads Windows
    go.mod file not found in current directory or any parent directory; see 'go help modules'
    xshell 所选的用户密钥未在远程主机上注册;无法加载密钥
    群起Hadoop的一个错误
    ssh: connect to host hadoop102 port 22: No route to host
    VMware下centos7配置静态ip并解决ping不通百度的问题
    虚拟机CentOS 7 网络连接显示"以太网(ens33,被拔出)"
    Rust-线程:使用消息传递在线程间传送数据
    Rust-线程,使用线程同时运行代码
    Rust-智能指针:RefCell<T>和内部可变性模式
  • 原文地址:https://www.cnblogs.com/jxsimon/p/5990775.html
Copyright © 2011-2022 走看看