濮阳杆衣贸易有限公司

主頁 > 知識庫 > ASP.NET下對cookies的操作實現代碼

ASP.NET下對cookies的操作實現代碼

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

public class BsCookie
{
//操作的cookie
private HttpCookie _theCookie;
//對應的cookie的名稱
private string _cookieName;
private bool _httpOnly = true;
/// summary>
/// 是否只允許在服務器端訪問,默認只允許在服務端訪問
/// /summary>
public bool HttpOnly
{
get { return _httpOnly; }
set { _httpOnly = value; }
}
private double _expireMinutes;
/// summary>
/// Cookies有效的存放時間,以分鐘表示
/// /summary>
public double ExpireMinutes
{
get { return _expireMinutes; }
set { _expireMinutes = value; }
}
public BsCookie(string name,double expireMinutes)
{
_cookieName = name;
_expireMinutes = expireMinutes;
}
/// summary>
/// 讀取對應的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>
/// 設置對應的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>
/// 僅設置主鍵的
/// /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>
/// 設置一組主鍵
/// /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">需要延長的cookie的默認時間/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>
/// 獲取一組對應的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>
/// 獲取一組里面的單一個值
/// /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中對Cookie的基本操作。
復制代碼 代碼如下:

Imports System.Web.HttpContext
Public Class CookieFramework
'寫入單個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集合添加子項
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
'讀取單個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集合中的子項內容
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
'刪除整個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集合中的子項
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保存用戶密碼實現自動登錄的方法
  • asp.net各種cookie代碼和解析實例
  • asp.net 操作cookie的簡單實例
  • ASP.NET之Response.Cookies.Remove 無法刪除COOKIE的原因
  • ASP.NET筆記之頁面跳轉、調試、form表單、viewstate、cookie的使用說明
  • Asp.net內置對象之Cookies(簡介/屬性方法/基本操作及實例)
  • asp.net中的cookie使用介紹
  • asp.net中使用cookie傳遞參數的方法

標簽:白城 怒江 金華 溫州 赤峰 酒泉 七臺河 洛陽

巨人網絡通訊聲明:本文標題《ASP.NET下對cookies的操作實現代碼》,本文關鍵詞  ASP.NET,下對,cookies,的,操作,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《ASP.NET下對cookies的操作實現代碼》相關的同類信息!
  • 本頁收集關于ASP.NET下對cookies的操作實現代碼的相關信息資訊供網民參考!
  • 推薦文章
    宁远县| 葫芦岛市| 抚宁县| 丽水市| 金溪县| 贡嘎县| 安塞县| 新疆| 晋州市| 肥东县| 保山市| 库尔勒市| 天等县| 遂宁市| 黑河市| 大名县| 吉安市| 六枝特区| 万载县| 长顺县| 仲巴县| 淮安市| 河源市| 加查县| 辽中县| 新泰市| 社旗县| 蕉岭县| 玉田县| 文成县| 广德县| 惠安县| 通化市| 高邑县| 甘谷县| 隆安县| 焉耆| 从江县| 六安市| 德州市| 涟源市|