
「你同意使用 Cookie 嗎?」這種通知,總是讓我每次都不知不覺按下「同意」,於是在準備 IT Passport 的過程中,我決定查查它到底是什麼。
大家好,我是自稱在公司擔任吉祥物、卻又是公司裡最不會察言觀色的ぷらむん🐯
每次打開網站都會跳出來的「你同意使用 Cookie 嗎?」彈出視窗,大家應該都看過吧。ぷらむん老實說,一直都沒搞懂,反正每次都先按「同意」。
就在今天我又在解 IT Passport 的歷屆試題時,碰到了「Cookie」這個詞。
最近才在 Instagram 上看到有人邊解釋 Cookie 邊吃了好多 🍪,結果我一時之間把意思搞混,完全看不懂……。
為什麼要取這麼麻煩的名字啊。於是プラ二郎前輩就來教我 Cookie 了。
—這篇文章適合這些人閱讀—
🟠 常常看到「你同意使用 Cookie 嗎?」這種通知,但其實不太懂
🟠 好奇為什麼會跟點心一樣都叫「Cookie」
🟠 想知道刪除 Cookie 之後會發生什麼事
🟠 也想知道那個同意橫幅到底是做什麼用的
【本文的前提文章】
▶ 「架構」到底是什麼?來查查 IT Passport 的 EA
▶ IT Passport 和基本資訊的差別是什麼?該先學哪個?
【推薦參考網站】
▶ IPA IT Passport 考試 歷屆試題(公開題)
▶ IT Passport 歷屆試題道場

🧑💻:プラ二郎前輩
「Cookie?如果你只想到點心,那了解它的由來後,說不定會意外地能理解喔」🧑💻:プラ二郎前輩
「IT Passport 裡大概會像這樣出題」
Q. 以下何者最適合描述:網站透過訪客的瀏覽器暫時儲存在裝置中的小型資料,用來記錄登入狀態與瀏覽紀錄等?
① 快取
② Cookie
③ Proxy
④ CDN(內容傳遞網路)
看答案
正解:② Cookie
Cookie 是網站透過瀏覽器暫時儲存在使用者裝置上的小型資料,用來記錄登入狀態、設定資訊等。
① 快取是為了提升顯示速度,暫時儲存頁面資料等的機制
③ Proxy 是位於用戶端與伺服器之間,負責中介通訊的伺服器
④ CDN 是利用配置在世界各地的伺服器,來有效率傳遞內容的機制
🧑💻:プラ二郎前輩
「答對了!不過,你應該不知道它為什麼叫這個名字吧」

🧑💻:プラ二郎前輩
「其實 Cookie 這個名字,是 1994 年美國網景公司的一位工程師想到的,但這個字不是他新創的」
「欸,那原本就有這個字嗎?」
🧑💻:プラ二郎前輩
「沒錯。『magic cookie(魔法 Cookie)』這個詞,從 1979 年左右開始就已經在 UNIX 和 C 語言的世界裡使用了。它指的是程式彼此交換資訊時,中間雖然內容看起來是空的,但其實帶有意義的小資料塊,也就是業界術語」
「那為什麼要叫『cookie』啊……?」
🧑💻:プラ二郎前輩
「其實這點到現在也沒有完全定論,說法很多※。那位工程師是在大學課程中學到這個『magic cookie』的詞,後來在打造 Web 新機制時,覺得『這和那個概念很像啊』,所以就直接借用了這個名字」
ぷらむん到這裡終於恍然大悟。原來 Cookie 不是從點心發想出來的名字,而是美國網景公司的工程師直接借用了更早以前就存在的電腦術語。沒想到這個詞背後還有更前一層的語源。
※眾說紛紜的說法之一,還有人認為與「fortune cookie(幸運籤餅)」有關,但 Cookie 為什麼會被這樣稱呼,至今仍無法確定。
「雖然知道由來了,但實際上它在扮演什麼角色,我還是有點模糊……」
🧑💻:プラ二郎前輩
「如果要比喻,Cookie 就像你常去店家拿到的會員卡」🧑💻:プラ二郎前輩
「第一次去的店,店員對你什麼都不知道。但如果你出示會員卡,對方就能馬上知道『啊,這位是常客啊』。Cookie 也是一樣,當你再次造訪曾經登入過的網站時,透過瀏覽器中保存的 Cookie,網站就能判斷『啊,這是這位使用者』」
「原來如此,所以登入過一次之後,下次再打開網站時,就不用每次都重新登入了啊」
🧑💻:プラ二郎前輩
「沒錯。像網路購物的『購物車』裡放了商品後,即使移動到其他頁面,內容也不會消失,這也是因為 Cookie 幫你記住了資訊」

「那如果我把 Cookie 刪掉,不就像把會員卡弄丟了一樣嗎?」
🧑💻:プラ二郎前輩
「就是那個感覺。刪除 Cookie 之後,網站會再把你當成『第一次來的人』,所以你可能要重新登入,或是購物車內容消失」
「還有,每次打開網站都會跳出來的『你同意使用 Cookie 嗎?』那個到底是為了什麼?我以前一直以為那是 Google 強制所有網站都要做的 之類的東西」
🧑💻:プラ二郎前輩
「很多人都這麼以為,但其實這不是 Google 自己訂的規則。根本原因是歐盟的『ePrivacy 指令』和『GDPR』這些法律,規定網站在使用 Cookie 等方式對使用者裝置儲存或存取資訊時,必須事先取得明確同意※」
「所以,那個通知與其說是 Google 的規定,不如說是法律造成的啊……」
🧑💻:プラ二郎前輩
「沒錯。不過 Google 針對使用自家廣告與分析服務的網站營運者,也制定了符合這些法律的同意取得政策,所以結果上看起來才會像是『Google 在確認』一樣」
ぷらむん一直都怕歸怕,卻又有點彆扭,還老是固執地拒絕那個每次都跳出來的「同意」按鈕,沒想到背後竟然有這樣的法律背景。
※維持登入狀態等屬於提供服務所必需的 Cookie,則不在需要同意的範圍內。
老實說,一開始我只把它想成「Cookie=跟點心同名的神祕通知」而已。
但查了之後才發現,名稱的由來背後還有更早的來源,而那個同意橫幅也確實有法律上的理由。
這次最大的發現,是平常隨手按下的一個按鈕,追根究柢之後,其實都有完整的歷史與理由。
—把這次學到的內容整理一下—
🟠 Cookie 是網站透過瀏覽器暫時儲存在使用者裝置上的小型資料,用來記錄登入狀態等資訊
🟠 「Cookie」這個名字,是 1994 年美國網景公司工程師,直接借用自 1979 年左右已存在於 UNIX・C 語言世界中的「magic cookie」這個業界術語
🟠 「你同意使用 Cookie 嗎?」這種通知,是根據 EU 的 ePrivacy 指令與 GDPR 建立的機制,並不是 Google 自己單方面決定的規則
PRUM 的工程師大多是以無經驗者身分錄用的。若你對像ぷらむん這樣,能自在成長的新人體系環境感興趣,歡迎看看公司的官方網站。
▶ PRUM 招募頁面
我們也有經營整理給工程師看的實用文章網站。若有興趣,也歡迎看看。
▶ 工程師實用文章網站
之後我還會再分享ぷらむん的奮鬥紀錄。感謝你讀到最後🐯