經典面試題目 — 在瀏覽器輸入網址之後,到底背後發生什麼事?

之所以說這個題目很經典,是因為現代太多應用都是用 HTTP 協定進行溝通,例如每個人每天都一定會開啟的網頁瀏覽器,背後就是使用 HTTP 協定,所以這個題目可以問出 1 個人對 HTTP 協定的了解情況之外,還可以延伸到怎麼解析網址變成 IP, 以什麼協定與 IP 建立連線等等。

ByteByteGo 的 5 分鐘影片 “What happens when you type a URL into your browser?” 解釋的很清楚,可以讓你有個全局概觀,也能夠初步認識瀏覽器怎麼運作(不包含畫面渲染)。

面試時,回答這個題目有以下 4 個重點需要提到:

  1. 什麼是 DNS 與 DNS 如何對域名(domain)進行解析?
  2. TCP 協定,其中 3 向交握(three-way handshake)是一定要知道的
  3. Keep-Alive 標頭,因為一直 3 向交握建立連線會導致效率不好,所以瀏覽器會使用 Keep-Alive 標頭告訴伺服器保持連線,避免雙方總是重新建立連線(這項功能需要 Client 與 Server 都支援)
  4. HTTP 協定,包含 GET, POST 等方法都需要理解

不過這個題目可大可小,從這個題目還可以繼續延伸出 Cookie 怎麼運作、怎麼壓縮傳輸的資源、網頁代理伺服器怎麼運作、 CORS(Cross-Origin Resource Sharing)怎麼運作等等,族繁不及備載⋯⋯。

結論,工程師面試真的累 😫

Facebook Threads X

對抗久坐職業傷害

研究指出每天增加 2 小時坐著的時間,會增加大腸癌、心臟疾病、肺癌的風險,也造成肩頸、腰背疼痛等常見問題。

然而對抗這些問題,卻只需要工作時定期休息跟伸展身體即可!

你想輕鬆改變現狀嗎?試試看我們的 PomodoRoll 番茄鐘吧! PomodoRoll 番茄鐘會根據你所設定的專注時間,定期建議你 1 項辦公族適用的伸展運動,幫助你打敗久坐所帶來的傷害!

贊助我們的創作

看完這篇文章了嗎? 休息一下,喝杯咖啡吧!

如果你覺得 MyApollo 有讓你獲得實用的資訊,希望能看到更多的技術分享,邀請你贊助我們一杯咖啡,讓我們有更多的動力與精力繼續提供高品質的文章,感謝你的支持!