cookie的三种操作方法

黄舟
Lepaskan: 2016-12-16 10:50:59
asal
1156 orang telah melayarinya

1,jquery.cookie.js

这一篇文章已经写的很详细了:

http://www.cnblogs.com/afuge/archive/2013/07/03/3169048.html

2,原生js操作cookie

jquery.cookie.js一般会出现cookie不兼容问题就要用原生的js了

3,服务器端处理

 /// 


    /// 将点击的值存放到Cookie中
    /// 

    PRivate void SetCookieValue(HttpContext context, string dic, string cookieName, string keyName)
    {
        HttpCookie cookie = new HttpCookie(cookieName);//初使化并设置Cookie的名称
        if (context.Request.Cookies[cookieName] != null)
        {
            cookie = context.Request.Cookies[cookieName];
            if (cookie.Values.Count > 0 && cookie.Values.GetValues(keyName) != null && cookie.Values.GetValues(keyName).Length > 0)
            {
                Remove(cookieName, keyName);
            }
        }
        TimeSpan ts = new TimeSpan(0, 3, 0, 0, 0);//过期时间为3小时
        cookie.Expires = DateTime.Now.Add(ts);//设置过期时间
        cookie.Values.Add(keyName, dic);
        context.Response.AppendCookie(cookie);
        //NCookieUtil.SetCookie(keyName, dic);
    }
    /// 
    /// 将点击的值从Cookie中取出
    /// 

    public string GetClickValue(HttpContext context, string cookieName, string keyName)
    {
        string userName = "";
        if (context.Request.Cookies[cookieName] != null)
        {
            if (context.Request.Cookies[cookieName][keyName] != null)
            {
                userName = context.Request.Cookies[cookieName][keyName].ToString();
            }
        }
        //userName = NCookieUtil.GetCookie(keyName);
        return userName;
    }
    ///   
    /// 移除cookie中指定的键,若是最后一个键则移除这个cookie  
    /// 
  
    public static void Remove(string cookieName, string keyName)
    {
        HttpCookie cookie = HttpContext.Current.Request.Cookies[cookieName];
        if (cookie != null)
        {
            if (cookie.Values.Count > 0)
            {
                if (cookie.Values.Count == 1)
                {
                    //若是最后一个键则移除这个cookie,否则会多出一个空值  
                    cookie.Values.Remove(HttpUtility.UrlEncode(keyName));
                    cookie.Expires = DateTime.Now.AddDays(-1);
                }
                else
                {
                    cookie.Values.Remove(HttpUtility.UrlEncode(keyName));
                }
                HttpContext.Current.Response.Cookies.Add(cookie);
            }
        }
    }

其实这三种方法还是建议用第二种方法!

 以上就是cookie的三种操作方法的内容,更多相关文章请关注PHP中文网(www.php.cn)! 


Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan