zoukankan      html  css  js  c++  java
  • 操作Cookie公用代码

    #region关于操作Cookie的方法

             
    ///<summary>

             
    ///创建cookie值

             
    ///</summary>

             
    ///<param name="cookieName">cookie名称</param>

             
    ///<param name="cookieValue">cookie值</param>

             
    ///<param name="cookieTime">cookie有效时间</param>


             
    private void CreateCookieValue(string cookieName,string cookieValue,DateTime cookieTime)

             
    {

                  HttpCookie cookie 
    = new HttpCookie(cookieName);

                  cookie.Value
    =cookieValue;

                  
    //DateTime dtNow = DateTime.Now ;

                  
    //TimeSpan tsMinute = cookieTime;

                  cookie.Expires 
    = cookieTime;

                  Response.Cookies.Add(cookie);

             }


             
    ///<summary>

             
    ///创建cookie值

             
    ///</summary>

             
    ///<param name="cookieName">cookie名称</param>    

             
    ///<param name="cookieValue">cookie值</param>

             
    ///<param name="subCookieName">子信息cookie名称</param>

             
    ///<param name="subCookieValue">子信息cookie值</param>

             
    ///<param name="cookieTime">cookie有效时间</param>


             
    private void CreateCookieValue(string cookieName,string cookieValue,string subCookieName,string subCookieValue,DateTime cookieTime)

             
    {

                  HttpCookie cookie 
    = new HttpCookie(cookieName);

                  cookie.Value
    =cookieValue;

                  cookie[subCookieName]
    =subCookieValue;

                  cookie.Expires 
    = cookieTime;

                  Response.Cookies.Add(cookie);

             }


             
    ///<summary>

             
    ///取得cookie的值

             
    ///</summary>

             
    ///<param name="cookieName">cookie名称</param>

             
    ///<returns></returns>


             
    private string GetCookieValue(string cookieName)

             
    {

                  
    string cookieValue="";

                  HttpCookie cookie 
    = Request.Cookies[cookieName];             

                  
    if(null == cookie)

                  
    {

                       cookieValue
    ="";

                  }


                  
    else

                  
    {

                       cookieValue
    =cookie.Value;

                  }


                  
    return cookieValue;

             }


             
    ///<summary>

             
    ///取得cookie的值

             
    ///</summary>

             
    ///<param name="cookieName">cookie名称</param>

             
    ///<param name="subCookieName">cookie子信息值</param>

             
    ///<returns></returns>


             
    public static string GetCookieValue(string cookieName, string subCookieName)
            
    {
                
    string cookieValue = "";
                HttpCookie cookie 
    = HttpContext.Current.Request.Cookies[cookieName];
                
    if (null == cookie)
                
    {
                    cookieValue 
    = "";
                }

                
    else
                
    {
                    cookieValue 
    = cookie.Value;
                    
    string[] words = cookieValue.Split('&');
                    
    foreach (string s in words)
                    
    {

                        
    if (s.IndexOf(subCookieName+"=">= 0)
                        
    {

                            cookieValue 
    = s.Split('=')[1];
                        }


                    }



                
    //  cookieValue = cookieValue.Split('&')[1].ToString().Split('=')[1];
                }

                
    return cookieValue;
            }



             
    ///<summary>

             
    ///删除某个固定的cookie值[此方法一是在原有的cookie上再创建同样的cookie值,但是时间是过期的时间]

             
    ///</summary>

             
    ///<param name="cookieName"></param>


             
    private void RemoteCookieValue(string cookieName)

             
    {

                  
    string dt="1900-01-01 12:00:00";

                  CreateCookieValue(cookieName,
    "",Convert.ToDateTime(dt));

             }


             
    #endregion

     

    以下是调用:

     

             
    private void Page_Load(object sender, System.EventArgs e)

             
    {

                  
    // 在这里放置使用者程序代码以初始化网页     

                  
    this.txt_UserID.Text=this.GetCookieValue("UserName","UserID");//取得用户名

             }


     

             
    private void btn_Submit_Click(object sender, System.EventArgs e)

             
    {    

    #region用Cookie进行保存登入用户名

                  
    if(this.chb_IsSave.Checked)

                  
    {

                       
    //将用户保存一个小时,具体设置可以进行调整。。

                       
    //这里用了固定的公用的cookie用户UserName,用户编号UserID进行访问

                       CreateCookieValue(
    "UserName","UserName","UserID",this.txt_UserID.Text,DateTime.Now+new TimeSpan(0,1,0,0));//设置保存用户名

                  }


                  
    #endregion

    }


  • 相关阅读:
    如何使用 vimdiff 来 git diff /svn diff
    nginx https ssl 设置受信任证书[原创]
    Nginx配置proxy_pass转发的/路径问题
    116、Android获取Manifest中<meta-data>元素的值
    Android Studio系列教程四--Gradle基础(转载)
    Android Studio系列教程六--Gradle多渠道打包(转载)
    1、Android Studio集成极光推送(Jpush) 报错 java.lang.UnsatisfiedLinkError: cn.jpush.android.service.PushProtoco
    Java数组转成list,list转数组
    115、定时器(TimerTask+Timer+Handler)
    114、Android禁止ViewPager的左右滑动
  • 原文地址:https://www.cnblogs.com/Spring/p/795194.html
Copyright © 2011-2022 走看看