iOS如何寫Cookie

前言

會話(Session)跟蹤是Web程序中常用的技術(shù)宇姚,用來跟蹤用戶的整個會話笨使。常用的會話跟蹤技術(shù)是Cookie與Session。Cookie通過在客戶端記錄信息確定用戶身份拯辙,Session通過在服務(wù)器端記錄信息確定用戶身份裳擎,在移動開發(fā)中Cookie越來越多用到了Cookie,覺得有必要去學(xué)習。

什么是Cookie

Cookie意為“甜餅”斯碌,是由W3C組織提出一死,最早由Netscape社區(qū)發(fā)展的一種機制。目前Cookie已經(jīng)成為標準傻唾,所有的主流瀏覽器如IE投慈、Netscape、Firefox冠骄、Opera等都支持Cookie逛裤。由于HTTP是一種無狀態(tài)的協(xié)議,服務(wù)器單從網(wǎng)絡(luò)連接上無從知道客戶身份猴抹。怎么辦呢带族?就給客戶端們頒發(fā)一個通行證吧,每人一個蟀给,無論誰訪問都必須攜帶自己通行證蝙砌。這樣服務(wù)器就能從通行證上確認客戶身份了。這就是Cookie的工作原理跋理。
Cookie實際上是一小段的文本信息择克。客戶端請求服務(wù)器前普,如果服務(wù)器需要記錄該用戶狀態(tài)肚邢,就使用response向客戶端瀏覽器頒發(fā)一個Cookie。客戶端瀏覽器會把Cookie保存起來骡湖。當瀏覽器再請求該網(wǎng)站時贱纠,瀏覽器把請求的網(wǎng)址連同該Cookie一同提交給服務(wù)器。服務(wù)器檢查該Cookie响蕴,以此來辨認用戶狀態(tài)谆焊。服務(wù)器還可以根據(jù)需要修改Cookie的內(nèi)容。

iOS下Cookie的用法

iOS中主要用到兩個類對Cookie進行操作:

  • NSHTTPCookie:在iOS中使用NSHTTPCookie類封裝一條Cookie,通過NSHTTPCookie的方法讀取到cookie的通用屬性
  • NSHTTPCookieStorage:單件類提供了管理所有NSHTTPCookie對象的接口浦夷,在OS X里,cookie是在所有程序中共享的辖试,而在iOS中,cookie只當當前應(yīng)用中有效
    如果想深入了解Cookie,大家可以參考下面兩篇博客:

iOS cookie的三種逆天用法 介紹Cookie的三個用法(獲取劈狐,修改罐孝,保存),還有代碼可以參考

iOS中Cookie介紹 詳細介紹了NSHTTPCookie和NSHTTPCookieStorage兩個類的具體用法

項目中用到的Cookie

項目中,當用戶登錄后,后臺返回一個authKey,需要我把authKey寫進Cookie獲得登陸后請求的權(quán)限肥缔。由于對Cookie的不熟悉肾档,一下子懵逼了,一開始還以為要在Cookie中增加一個鍵值對辫继,可惜怎么設(shè)置都不成功,后來發(fā)現(xiàn)Cookie可以做到上面的三種用法俗慈,沒法做到修改姑宽,最多新建一個替換原來的Cookie。最后發(fā)現(xiàn)自己再創(chuàng)建一個Cookie就行了闺阱,明白了才知道那么簡單E诔怠!酣溃!代碼如下:

     NSMutableDictionary *cookieProperties = [NSMutableDictionary dictionary];
    [cookieProperties setObject:@"authKey" forKey:NSHTTPCookieName];
    [cookieProperties setObject:@"服務(wù)器ip" forKey:NSHTTPCookieDomain];
    [cookieProperties setObject:@"服務(wù)器ip" forKey:NSHTTPCookieCommentURL];
    [cookieProperties setObject:aut.authKey forKey:NSHTTPCookieValue];
    [cookieProperties setObject:@"/" forKey:NSHTTPCookiePath];
    [cookieProperties setObject:@"0" forKey:NSHTTPCookieVersion];
    
    NSHTTPCookie *cookie = [NSHTTPCookie cookieWithProperties:cookieProperties];
    [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];

設(shè)置好之后保存好瘦穆,下次請求就會帶上自己設(shè)置的Cookie,這樣后面登錄后的請求就可以成功了!

第一次在簡書上發(fā)表自己的文章赊豌,略緊張~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末扛或,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子碘饼,更是在濱河造成了極大的恐慌熙兔,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件艾恼,死亡現(xiàn)場離奇詭異住涉,居然都是意外死亡,警方通過查閱死者的電腦和手機钠绍,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進店門舆声,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人柳爽,你說我怎么就攤上這事媳握〖钇ǎ” “怎么了?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵毙芜,是天一觀的道長忽媒。 經(jīng)常有香客問我,道長腋粥,這世上最難降的妖魔是什么晦雨? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮隘冲,結(jié)果婚禮上闹瞧,老公的妹妹穿的比我還像新娘。我一直安慰自己展辞,他們只是感情好奥邮,可當我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著罗珍,像睡著了一般洽腺。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上覆旱,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天蘸朋,我揣著相機與錄音,去河邊找鬼扣唱。 笑死藕坯,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的噪沙。 我是一名探鬼主播炼彪,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼正歼!你這毒婦竟也來了辐马?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后调卑,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡贞奋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了穷绵。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片轿塔。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出勾缭,到底是詐尸還是另有隱情揍障,我是刑警寧澤,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布俩由,位于F島的核電站毒嫡,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏幻梯。R本人自食惡果不足惜兜畸,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望碘梢。 院中可真熱鬧咬摇,春花似錦、人聲如沸煞躬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽恩沛。三九已至在扰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間雷客,已是汗流浹背芒珠。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留佛纫,地道東北人。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓总放,卻偏偏與公主長得像呈宇,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子局雄,可洞房花燭夜當晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理甥啄,服務(wù)發(fā)現(xiàn),斷路器炬搭,智...
    卡卡羅2017閱讀 134,657評論 18 139
  • 一宫盔、基礎(chǔ)知識篇:Http Header之User-AgentUser Agent中文名為用戶代理融虽,是Http協(xié)議中...
    iPhone閱讀 15,724評論 0 13
  • HTTP cookie(也稱為web cookie,網(wǎng)絡(luò)cookie,瀏覽器cookie或者簡稱cookie)是網(wǎng)...
    留七七閱讀 17,959評論 2 71
  • 我的 Dropbox 上有一個 Markdown 文件,名字叫 “每天寫一點”灼芭。這個文件是我在2014年4月22號...
    Qingniu閱讀 952評論 1 39
  • 你曾否在某年某天的某個瞬間突然想念某個人有额?他不一定曾在你的生命中濃墨重彩的出現(xiàn)過,你卻在某個瞬間突然想念他。 這種...
    閑人慢三閱讀 1,287評論 7 16