人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

對于CGI讀寫COOKIE的編程

對于CGI讀寫COOKIE的編程

更新時間:2022-08-17 文章作者:未知 信息來源:網絡 閱讀次數:

COOKIE的用途相信大家都知道了,有時我們的CGI需要記錄讀取某個來訪者的信息,例如該來訪者使用該用的情況,那就得用到COOIKE技術,下面就討論一下如何用CGI來記錄、讀取來訪者計算機中的COOKIE。 

  COOKIE在不同的瀏覽器上的存儲方式是不同的,但這并不存在不兼容的問題,因為WEB服務器與瀏覽器之間是通過HTTP響應頭實現互相傳送COOKIE的信息的,我們在讀寫COOKIE時不必理會其在客戶端是怎么存儲的。 

  在CGI向來訪者的計算機中寫入一條COOKIE時,CGI需要向瀏覽器發送一個響應頭: 

Set-Cookie:name1=value;name2=value2;exprires=DATE;PATH=PATH;domiam=DOMAIN_NAME;SECURE 

  現在逐個來解釋以上響應頭各項的含義,各項內容是用分號閣開的 

  我們看到 name1=value和name2=value2 就是你要設置的COOKIE的內容,它是以名字=值的方式發送的,而name=value中不可以有冒號、逗號、和空格,但可以用%XX代替,XX為一個16進制數; 

exprires=DATE項是有關COOKIES的生存期,即該COOKIE的有效期,有效期的時間格式是格林威治時間格式:wdy,DD-MON-YYYY HH:MM:SS GMT 
這一項在寫入COOIE時是可選的,但不設置的話瀏覽器與WEB服務器的一次連接結束后,COOKIE就過了有效期; 

domian項定義哪些主機可以讀取COOKIES,通常COOKIE存放的都不重要的信息,如果你要存放的的信息不大重要,這一項也不用設置; 

PATH項是定義了一臺主機上哪些WWW資源可以讀取你所設置的COOKIE,如果PATH=/ 則這臺主機上所有WWW資源可以讀取你所設置的COOKIE; 

SECURE是有關加密傳送我們可不用理會。 
如果你在一臺支持COOKIE的客戶端設置了COOKIE,當這個客戶端在次來訪問時,瀏覽器會向你的CGI所在的WEB服務器發送一條HTTP響應頭,這個響應頭為: 
Cookie:name1=value;name2=value2;exprires=DATE;PATH=PATH;domiam=DOMAIN_NAME;SECURE 
根據這個HTTP響應頭WEB服務器的環境變量 HTTP_COOKIE=:name1=value;name2=value2 
我們對這個環境變量的內容進行分解就可以的到我我們要的信息。 

  以下給出我寫的讀寫COOKIE的兩段PERL程序,你也可以把它改寫為C語言 

設置COOKIE: 

print "Content-type:text/htmln"; 
print "Set-Cookie:name1=zjxyz;expires=Thursdday,01-Jan-2000 12:00:00 GMTn"; 
print "Set-Cookie:name2=ken;expires=Thursdday,01-Jan-2000 12:00:00 GMTn"; 
print "Set-Cookie:name3=ken;expires=Thursdday,01-Jan-2000 12:00:00 GMTnn"; 

  讀取COOKIE和分解的過程: 

@pairs = split(/&/, $ENV{’HTTP_COOKIE’}); 
foreach $pair (@pairs){ 
($name, $value) = split(/=/, $pair); 
$value =~ tr/+/ /; 
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; 
$cookie{$name} = $value;} 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 鲁山县| 白朗县| 焦作市| 廉江市| 泰州市| 阿坝县| 饶平县| 乃东县| 桂平市| 凤冈县| 巩义市| 建宁县| 民乐县| 泾川县| 大港区| 榕江县| 长海县| 得荣县| 大同县| 安岳县| 克山县| 金溪县| 石阡县| 营山县| 丹寨县| 稻城县| 赤壁市| 洛隆县| 隆回县| 垫江县| 北海市| 华坪县| 肥西县| 三门县| 沁源县| 大关县| 巨鹿县| 达孜县| 正蓝旗| 特克斯县| 忻城县|