資源描述:
《在cgi中如何使用cookie的方法》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、在CGI中如何使用cookie的方法>>教育資源庫(kù)cookie的語(yǔ)法:httpcookie的發(fā)送是通過(guò)http頭部來(lái)實(shí)現(xiàn)的,他早于文件的傳遞,頭部set-cookie的語(yǔ)法如下:Set-cookie:name=name;expires=date;path=path;domain=domain;securename=name:需要設(shè)置cookie的值(name不能使用“;”和","號(hào)),有多個(gè)name值時(shí)用";"分隔例如:name1=name1;name2=name2;name3=name3。expires=date:cookie的有效期限,格式:expires="on-YYYYHH
2、:MM:SS"path=path:設(shè)置cookie支持的路徑,如果path是一個(gè)路徑,則cookie對(duì)這個(gè)目錄下的所有文件及子目錄生效,例如:path="/cgi-bin/",如果path是一個(gè)文件,則cookie指對(duì)這個(gè)文件生效,例如:path="/cgi-bin/cookie.cgi"。domain=domain:對(duì)cookie生效的域名,例如:domain=".chinalb."secure:如果給出此標(biāo)志,表示cookie只能通過(guò)SSL協(xié)議的https服務(wù)器來(lái)傳遞。cookie的接收是通過(guò)設(shè)置環(huán)境變量HTTP_COOKIE來(lái)實(shí)現(xiàn)的,CGI程序可以通過(guò)檢索該變量獲取cooki
3、e信息?!ookie的模塊:以下是一個(gè)cookie的模塊,可以為你編寫(xiě)程序帶來(lái)方便#########代碼開(kāi)始################################################################################HTTPCookieLibraryVersion2.1##Copyright1996Mattodified12/23/96################################################################################$Cookie_Exp_Date='
4、Thu,31-Dec-205023:00:00GMT';#此處設(shè)置cookie的有效時(shí)間$Cookie_Path='';#此處設(shè)置cookie的有效路徑,默認(rèn)腳本存在的目錄。$Cookie_Domain='';#此處設(shè)置cookie的有效域名,默認(rèn)腳本調(diào)用的域名。Cookie_Encode_Chars=('%','+',';',',','=','','::','s');%Cookie_Encode_Chars=('%','%25','+','%2B',';','%3B',',','%2C','=','%3D','','%26','::','%3A%3A','s','+');#特殊字
5、符的解碼Cookie_Decode_Chars=('+','%3A%3A','%26','%3D','%2C','%3B','%2B','%25');%Cookie_Decode_Chars=('+','','%3A%3A','::','%26','','%3D','=','%2C',',','%3B',';','%2B','+','%25','%');#特殊字符的解碼###################################3#獲取cookie信息#############################################################
6、###################GetCookies################################################################################subGetCookies{local(ReturnCookies)=_;local($cookie_flag)=0;local($cookie,$value);if($ENV{'HTTP_COOKIE'}){foreach(split(/;/,$ENV{'HTTP_COOKIE'})){#分割HTTP_COOKIE變量的字符串($cookie,$value)=spl
7、it(/=/);foreach$char(Cookie_Decode_Chars){$cookie=~s/$char/$Cookie_Decode_Chars{$char}/g;#調(diào)用轉(zhuǎn)碼函數(shù)$value=~s/$char/$Cookie_Decode_Chars{$char}/g;#調(diào)用轉(zhuǎn)碼函數(shù)}$Cookies{$cookie}=$value;}$cookie_flag=1;}return$cookie_flag;}#設(shè)置Cookie信息#############