M3U8 串流影音 — 概念 與 下載
現今,許多影音媒體網站皆能看到 M3U8 檔案, 以及許多副檔名為 .ts 的分段媒體, 本篇將介紹其基本概念,並說明如何下載成 mp4 檔 😆。 HLS 簡介 Apple Inc. 於 2009 年時提出了 HTTP Live Streaming (HLS), 恰如 […]
HTTP 協定 是全球資訊網 (WWW) 的通訊基礎。
除了網站開發,許多 APP、嵌入裝置、軟體…,也依此取得服務,
因此,成了大部分開發者的必備技能。
此系列由淺入深地介紹 HTTP 協定,
並幅探討背後的指導原則 — REST 架構風格,
期望給您最正確、標準的 HTTP 介紹 😃。
現今,許多影音媒體網站皆能看到 M3U8 檔案, 以及許多副檔名為 .ts 的分段媒體, 本篇將介紹其基本概念,並說明如何下載成 mp4 檔 😆。 HLS 簡介 Apple Inc. 於 2009 年時提出了 HTTP Live Streaming (HLS), 恰如 […]
HTTP (Hypertext Transfer Protocol) 超文本傳輸協定, 主要是架構於 TCP/IP 之上的 應用層,為 無狀態 的 請求-回應 通訊協定。 HTTP 由最初的 頁面、媒體傳輸,發展為今日 Web 應用的根基, 許多 APP、嵌入裝置、軟體… […]
所謂 驗證 (Validate) 或 重新驗證 (revalidate), 即是 使用 條件請求 (Conditional Requests) 機制, 以獲得 重複使用 快取的機會、更新快取的元資料,或者 取得 新的回應。 條件請求 (conditional requ […]
當 快取 (回應) 以 顯式、啟發式 計算為過期,則稱 陳舊回應 (Stale Response)。 當儲存的回應 不新鮮 (not fresh) 時,則與 Server 進行「驗證 (Validation)」, 通過驗證則可繼續使用,否則重新獲取回應。 所謂 驗證 […]
就像食品擁有 保存期限,快取 (Cache) 擁有一段 新鮮時限 (freshness lifetime), 未過期則為 新鮮回應 (Fresh Response),反之,稱為 陳舊回應 (stale response)。 新鮮回應 (Fresh Response),可以用來滿足後 […]
最好的請求,是不必與伺服器進行通訊的請求。 — Google web performance engineer, Ilya Grigorik HTTP 快取 (HTTP Cache),或稱 HTTP 緩存, 是 回應訊息 的 本地儲存 以及 控制、檢索、刪除 該訊息的機制。 用於減少 […]
如 (2-1) 統一資源識別符 (URI) 所述, Client 會先透過 名稱解析服務 (ex: DNS), 找到 Server (或 代理、閘道、負載平衡器) 的 IP 位址,並藉此訪問: 然而,因早期 HTTP 的錯誤設計,Client 並不會送出 目標 URI ! […]
(5-2) 代理 (proxy)、隧道 (tunnel) 與 閘道 (gateway): 正常情況下,HTTP 的請求、回應訊息, 將經歷 連接鍊 (chain of connection) 中的連線, 最終抵達 使用者代理 (User Agent, UA) 或 源伺服器 (Origin Server, O) […]