HTTP 協定的悲劇

更新於 2024/09/20閱讀時間約 1 分鐘
referrer 是正確的字!
我一直都覺得很奇怪,為什麼有時會二個 r, 有時一個。
下方倒數第二行,就是 referer 參數 (截圖來源: Firefox + Google)
最原始的 HTTP 1.0 協定: RFC1945,在設定協定時, Phillip Hallam-Baker 加一個參數 referrer 欄位,用來跟伺服器闡明誰介紹我來的。但他寫錯字,寫成 referer,又沒有人發現少一個 r。於是,全部 HTTP Server/Client 都只能將錯就錯,協定的 header 欄位,錯的 referer 就變成對的。
DOM 模型定義 (截圖來源: W3C 網站)
但 W3C 的標準 DOM 模型,設計是用 referrer。這聲程式設計師頭腦要很清楚:跟 HTTP Header 有關的程式,要寫 referer;跟 DOM 有關的 Javascript 要寫 referrer。
為什麼會看到廣告
avatar-img
2會員
26內容數
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
WILSON PENG的沙龍 的其他內容
1992 年,文化大學畜產系養雞記錄
1992 年,文化大學畜產系養雞記錄
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
網頁回應碼是指當網頁伺服器處理完一個請求後所回傳的狀態碼。這篇文章介紹了網頁回應碼的分類,包括1XX、2XX、3XX、4XX和5XX狀態碼,並解釋了各種狀態碼的意義和常見原因。
HTTP(Hyper Text Transfer Protocol,超文字傳輸協定) 通常執行在TCP協定上。請求和回傳訊息的頭是ASCII,而內容是MIME。 HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer) 以HT
Thumbnail
資訊回應(Informational responses) 100~199 100(Continue):伺服器在等待用戶端繼續請求。 102(Processing):伺服器收到請求正在處理中。 成功回應(Successful responses) 200~299 200(OK):請求
Thumbnail
Accept:用戶端能夠接收的內容類型。 Accept: text/plain, text/html Accept-Charset:瀏覽器可以接受的字元編碼集。 Accept-Charset: utf8 Accept-Encoding:指定瀏覽器可以支援的web伺服器返回內容壓縮編碼
Thumbnail
HTTP伺服器端 package main import ( "net/http" ) type Refer struct { handler http.Handler refer string } //實現中介軟體邏輯​ func (this *Refer) ServeHTTP(
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
網頁回應碼是指當網頁伺服器處理完一個請求後所回傳的狀態碼。這篇文章介紹了網頁回應碼的分類,包括1XX、2XX、3XX、4XX和5XX狀態碼,並解釋了各種狀態碼的意義和常見原因。
HTTP(Hyper Text Transfer Protocol,超文字傳輸協定) 通常執行在TCP協定上。請求和回傳訊息的頭是ASCII,而內容是MIME。 HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer) 以HT
Thumbnail
資訊回應(Informational responses) 100~199 100(Continue):伺服器在等待用戶端繼續請求。 102(Processing):伺服器收到請求正在處理中。 成功回應(Successful responses) 200~299 200(OK):請求
Thumbnail
Accept:用戶端能夠接收的內容類型。 Accept: text/plain, text/html Accept-Charset:瀏覽器可以接受的字元編碼集。 Accept-Charset: utf8 Accept-Encoding:指定瀏覽器可以支援的web伺服器返回內容壓縮編碼
Thumbnail
HTTP伺服器端 package main import ( "net/http" ) type Refer struct { handler http.Handler refer string } //實現中介軟體邏輯​ func (this *Refer) ServeHTTP(