主頁 > 知識(shí)庫 > ASP.NET下對(duì)cookies的操作實(shí)現(xiàn)代碼

ASP.NET下對(duì)cookies的操作實(shí)現(xiàn)代碼

熱門標(biāo)簽:滄州電銷外呼系統(tǒng)價(jià)格 合肥ai電銷機(jī)器人費(fèi)用 天津電銷外呼系統(tǒng)違法嗎 400電話個(gè)人能不能辦理 手機(jī)外呼系統(tǒng)什么原理 上海400客服電話怎么申請(qǐng) 溫州外呼系統(tǒng)招商 凱立德地鐵站地圖標(biāo)注 銀行信貸電話機(jī)器人
復(fù)制代碼 代碼如下:

public class BsCookie
{
//操作的cookie
private HttpCookie _theCookie;
//對(duì)應(yīng)的cookie的名稱
private string _cookieName;
private bool _httpOnly = true;
/// summary>
/// 是否只允許在服務(wù)器端訪問,默認(rèn)只允許在服務(wù)端訪問
/// /summary>
public bool HttpOnly
{
get { return _httpOnly; }
set { _httpOnly = value; }
}
private double _expireMinutes;
/// summary>
/// Cookies有效的存放時(shí)間,以分鐘表示
/// /summary>
public double ExpireMinutes
{
get { return _expireMinutes; }
set { _expireMinutes = value; }
}
public BsCookie(string name,double expireMinutes)
{
_cookieName = name;
_expireMinutes = expireMinutes;
}
/// summary>
/// 讀取對(duì)應(yīng)的cookie
/// /summary>
/// param name="name">/param>
/// returns>/returns>
private HttpCookie GetCookieReq()
{
HttpRequest request = HttpContext.Current.Request;
if (request != null)
{
HttpCookie cookie = request.Cookies[_cookieName];
if (cookie != null)
{
return cookie;
}
}
return null;
}
/// summary>
/// 設(shè)置對(duì)應(yīng)的cookie
/// /summary>
/// param name="name">/param>
/// returns>/returns>
private HttpCookie GetCookieResponse()
{
HttpResponse response = HttpContext.Current.Response;
if (response != null)
{
HttpCookie cookie = response.Cookies[_cookieName];
if (cookie != null)
{
return cookie;
}
}
return new HttpCookie(_cookieName);
}
/// summary>
/// 僅設(shè)置主鍵的
/// /summary>
/// param name="name">/param>
/// param name="value">/param>
/// param name="exMinutes">/param>
public void SetCookie(string value)
{
_theCookie = GetCookieResponse();
_theCookie.Value = HttpUtility.HtmlEncode(AllCommon.Encrypt(value));
if (Math.Abs(_expireMinutes) > 1)
{
_theCookie.Expires = DateTime.Now.AddMinutes(_expireMinutes);
}
_theCookie.HttpOnly = _httpOnly;
}
/// summary>
/// 設(shè)置一組主鍵
/// /summary>
/// param name="name">/param>
/// param name="keys">/param>
/// param name="exMinutes">/param>
public void SetCookie(Hashtable keys)
{
_theCookie = GetCookieResponse();
foreach (DictionaryEntry de in keys)
{
_theCookie.Values[de.Key.ToString()] = HttpUtility.HtmlEncode(AllCommon.Encrypt(de.Value.ToString()));
}
if (Math.Abs(_expireMinutes) > 1)
{
_theCookie.Expires = DateTime.Now.AddMinutes(_expireMinutes);
}
_theCookie.HttpOnly = _httpOnly;
}
/// summary>
/// 獲取單一的cookie主鍵值
/// /summary>
/// param name="name">/param>
/// param name="exMinutes">需要延長(zhǎng)的cookie的默認(rèn)時(shí)間/param>
/// returns>/returns>
public string GetCookie()
{
_theCookie = GetCookieReq();
if (_theCookie == null)
{
return string.Empty;
}
string thevalue = AllCommon.Decrypt(HttpUtility.HtmlDecode(_theCookie.Value));
if (thevalue.Length > 0)
{
HttpCookie serverCookie = GetCookieResponse();
if (Math.Abs(_expireMinutes) > 1)
{
serverCookie.Expires = DateTime.Now.AddMinutes(_expireMinutes);
}
}
return thevalue;
}
/// summary>
/// 獲取一組對(duì)應(yīng)的cookie值
/// /summary>
/// param name="name">/param>
/// param name="exMinutes">/param>
/// returns>/returns>
public Hashtable GetCookiesKeys()
{
_theCookie = GetCookieReq();
if (_theCookie == null)
{
return null;
}
string[] keys = _theCookie.Values.AllKeys;
if (keys.Length > 0)
{
Hashtable keyHash = new Hashtable();
foreach (string key in keys)
{
keyHash.Add(key, AllCommon.Decrypt(HttpUtility.HtmlDecode(_theCookie.Values[key])));
}
HttpCookie serverCookie = GetCookieResponse();
if (Math.Abs(_expireMinutes) > 1)
{
serverCookie.Expires = DateTime.Now.AddMinutes(_expireMinutes);
}
return keyHash;
}
return null;
}
/// summary>
/// 獲取一組里面的單一個(gè)值
/// /summary>
/// param name="keyname">/param>
/// param name="exMinutes">/param>
/// returns>/returns>
public string GetCookieKV(string keyname)
{
_theCookie = GetCookieReq();
if (_theCookie == null)
{
return string.Empty;
}
string result=AllCommon.Decrypt(HttpUtility.HtmlDecode(_theCookie.Values[keyname]));
if (result.Length > 0)
{
HttpCookie serverCookie = GetCookieResponse();
if (Math.Abs(_expireMinutes) > 1 serverCookie != null)
{
serverCookie.Expires = DateTime.Now.AddMinutes(_expireMinutes);
}
}
return result;
}
}

演示Asp.Net中對(duì)Cookie的基本操作。
復(fù)制代碼 代碼如下:

Imports System.Web.HttpContext
Public Class CookieFramework
'寫入單個(gè)Cookie
Public Shared Function WriteCookie(ByVal CookieName As String, ByVal CookieValue As String, ByVal ExpiresDate As Integer) As Boolean
Dim aCookie As New HttpCookie(CookieName)
aCookie.Value = CookieValue
aCookie.Expires = DateTime.Now.AddDays(ExpiresDate)
System.Web.HttpContext.Current.Response.Cookies.Add(aCookie)
End Function

'給Cookie集合添加子項(xiàng)
Public Shared Function WriteCookies(ByVal CookieName As String, ByVal CookieItem As String, ByVal ItemValue As String, ByVal ExpiresDate As Integer) As Boolean
Dim aCookie As HttpCookie
If Current.Request.Cookies(CookieName) Is Nothing Then
aCookie = New HttpCookie(CookieName)
Else
aCookie = Current.Request.Cookies(CookieName)
End If
aCookie.Values(CookieItem) = ItemValue
aCookie.Expires = DateTime.Now.AddDays(ExpiresDate)
System.Web.HttpContext.Current.Response.Cookies.Add(aCookie)
End Function
'讀取單個(gè)Cookie
Public Shared Function ReadCookie(ByVal CookieName As String) As String
If Current.Request.Cookies(CookieName) Is Nothing Then
Return Nothing
Else
Return Current.Request.Cookies(CookieName).Value
End If
End Function

'讀取Cookie集合中的子項(xiàng)內(nèi)容
Public Shared Function ReadCookies(ByVal CookieName As String, ByVal CookieItem As String) As String
If Current.Request.Cookies(CookieName) Is Nothing Then
Return Nothing
Else
If Current.Request.Cookies(CookieName).Values(CookieItem) Is Nothing Then
Return Nothing
Else
Return Current.Request.Cookies(CookieName).Values(CookieItem)
End If
End If
End Function
'刪除整個(gè)Cookie
Public Shared Function DeleteCookie(ByVal CookieName As String) As Boolean
Dim aCookie As New HttpCookie(CookieName)
Dim i As Integer
Dim limit As Integer = Current.Request.Cookies.Count - 1
For i = 0 To limit
aCookie = Current.Request.Cookies(i)
aCookie.Expires = DateTime.Now.AddDays(-1)
Current.Response.Cookies.Add(aCookie)
Next
End Function
'刪除Cookie集合中的子項(xiàng)
Public Shared Function DeleteCookies(ByVal CookieName As String, ByVal ItemName As String) As Boolean
Dim aCookie As HttpCookie = Current.Request.Cookies(CookieName)
aCookie.Values.Remove(ItemName)
aCookie.Expires = DateTime.Now.AddDays(1)
Current.Response.Cookies.Add(aCookie)
End Function
End Class
您可能感興趣的文章:
  • asp.net利用cookie保存用戶密碼實(shí)現(xiàn)自動(dòng)登錄的方法
  • asp.net各種cookie代碼和解析實(shí)例
  • asp.net 操作cookie的簡(jiǎn)單實(shí)例
  • ASP.NET之Response.Cookies.Remove 無法刪除COOKIE的原因
  • ASP.NET筆記之頁面跳轉(zhuǎn)、調(diào)試、form表單、viewstate、cookie的使用說明
  • Asp.net內(nèi)置對(duì)象之Cookies(簡(jiǎn)介/屬性方法/基本操作及實(shí)例)
  • asp.net中的cookie使用介紹
  • asp.net中使用cookie傳遞參數(shù)的方法

標(biāo)簽:白城 怒江 金華 溫州 赤峰 酒泉 七臺(tái)河 洛陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《ASP.NET下對(duì)cookies的操作實(shí)現(xiàn)代碼》,本文關(guān)鍵詞  ASP.NET,下對(duì),cookies,的,操作,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《ASP.NET下對(duì)cookies的操作實(shí)現(xiàn)代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于ASP.NET下對(duì)cookies的操作實(shí)現(xiàn)代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章