>  기사  >  웹 프론트엔드  >  쿠키를 운영하는 세 가지 방법

쿠키를 운영하는 세 가지 방법

黄舟
黄舟원래의
2016-12-16 10:50:591151검색

1, jquery.cookie.js

이 기사는 매우 자세하게 작성되었습니다:

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

2. 기본 js는 쿠키를 작동합니다

jquery.cookie.js는 일반적으로 쿠키 비호환 문제가 있으므로 기본 js를 사용해야 합니다

< ;script 언어=javascript> ;

//coolie 값 가져오기

function cookie(name){

var cookieArray=document.cookie.split("; " ); //분할 쿠키 이름-값 쌍 가져오기

var cookie=new Object()

for (var i=0;i

var arr=cookieArray[i].split("="); //이름과 값을 분리합니다. ]); //지정된 쿠키인 경우 해당 값을 반환합니다.

}

return "";

}

delCookie(이름)//쿠키 삭제

{

문서 .cookie = name+"=;expires="+(new Date(0)).toGMTString();

}

function getCookie(objName){// 지정된 이름의 쿠키 값을 가져옵니다

var arrStr = document.cookie.split("; " );

for(var i = 0;i < arrStr.length; i ++){

var temp = arrStr[i].split("=");

if(temp[0] == objName) return unescape(temp[1]) ;

}

}

function addCookie(objName,objValue,objHours){ //쿠키 추가

var str = objName + "=" + escape(objValue);

if(objHours > 0){ //For 만료 시간이 설정되지 않으며 브라우저를 닫으면 쿠키가 자동으로 사라집니다

var date = new Date();

var ms = objHours*3600*1000;

date .setTime(date.getTime() + ms);

str += "; 만료=" + date.toGMTString();

}

document.cookie = str;

}

function SetCookie(name,value)//두 개의 매개변수, 하나는 쿠키의 이름이고 다른 하나는 값입니다.

{

var Days = 30; 30일 동안 저장됩니다

var exp = new Date(); //new Date("9998년 12월 31일");

exp.setTime(exp.getTime() + Days* 24*60*60*1000);

document.cookie = 이름 + "="+ 이스케이프(값) + ";expires= " + exp.toGMTString();

}

function getCookie(name)//쿠키 가져오기 함수   

{

var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));

if(arr != null ) return unescape(arr[2]); return null;

}

function delCookie(이름)//쿠키 삭제

{

var exp = new Date();

exp.setTime(exp.getTime() - 1);

var cval=getCookie(name);

if(cval!=null) document.cookie= 이름 + "= "+cval+";expires="+exp.toGMTString();

}

3, 서버 측 처리

///


/// 클릭한 값을 쿠키에 저장
///

PRivate void SetCookieValue(HttpContext context, string dic, string cookieName , string keyName)
{
HttpCookie cookie = new HttpCookie(cookieName);//쿠키 이름 초기화 및 설정
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). 길이 > ; 0)
                                                                                            | red 시간은 3시간입니다
cookie.Expires = DateTime.Now.Add(ts);//만료 시간 설정
cookie.Values.Add(keyName, dic);
context.Response.AppendCookie(cookie) ;
//NCookieUtil.SetCookie(keyName, dic);
}
/// < ;summary>
/// 쿠키에서 클릭 값 가져오기
/// < ;/summary>
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();
                                                      ~                   
/// 쿠키 제거 마지막 키인 경우 쿠키를 제거합니다.
/ //
public static void Remove(string cookieName, string keyName) .Current.Request.Cookies[cookieName];
if (cookie != null)
{
if ( cookie.Values.Count > 0)
{
If (cookie.Values ​​.Count == 1)
{
//마지막 키인 경우 이 쿠키를 제거합니다. 그렇지 않으면 추가 null 값
UrlEncode(keyName));
cookie.Expires = DateTime.Now.AddDays (-1); Values.Remove(HttpUtility.UrlEncode(keyName));
      }
HttpContext.Current.Response.Cookies.Add(cookie);
                     ~                                                          .

위 내용은 쿠키의 3가지 운영방식에 대한 내용입니다. 더 많은 관련 글은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.