本程式碼研究室會逐步引導您解讀較複雜範例應用程式的所有網路流量。完成練習後,您將具備相關技能,可判斷自己的網頁應用程式正在載入哪些內容,以及何時發出各項要求。
前往「網路」面板
前往「Network」面板,查看範例應用程式的網路流量。
- 按下 `Control+Shift+J` 鍵 (在 Mac 上為 `Command+Option+J` 鍵) 開啟開發人員工具。
- 按一下 [網路] 分頁標籤。
- 重新載入頁面即可查看網路流量。
「網路」面板會顯示因初始導覽而載入的所有資產:
如何解讀項目
記錄的網路流量每一列都代表一組請求和回應。
第一列 (類型為 document
) 是網頁應用程式 HTML 的初始導覽要求。這是瀑布圖的來源;後續對其他素材資源 (稱為主要文件的子資源) 的每個要求,都會從這個原始來源流動。
第二和第三列顯示載入的 CSS stylesheet
和 script
子資源,這些是主要文件啟動的依附要求。
查看這些要求何時提出,瀑布圖顯示,這些要求直到回應導覽要求程序的後期才開始。
總而言之,顯示初始導覽期間的完整網頁,需要 HTML 文件、CSS 和 JavaScript 的要求。
建立一些額外的執行階段要求
「Network」面板仍處於開啟和記錄狀態,現在要模擬許多網頁應用程式的常見情況:在初始導覽完成後,使用額外的 API 要求將更多資料新增至網頁。
如要觸發這些額外要求,請在應用程式中按一下「尋找我的位置」,然後在隨即顯示的彈出式視窗中按一下「允許」。 這樣一來,網站就能存取你目前的位置資訊:
網頁應用程式取得可使用的位置資訊後,點選「Find Nearby Wikipedia Entries」(尋找附近的維基百科條目) 會產生多個額外的網路要求。您應該會看到如下內容:
解讀新項目
與先前相同,記錄的網路流量中的每一列都代表一組要求和回應。
新項目的第一列代表類型為 fetch
的要求,對應於網頁應用程式向 Wikipedia API 要求資料的方式。
以下資料列都是與維基百科條目相關的圖片 (png
或 jpeg
)。雖然從螢幕截圖中不太容易看出,但「瀑布圖」欄中的項目直接來自 API 回應。
對於所有這些額外要求,時間會因您點選「尋找附近的維基百科條目」前開啟網頁的時間長度而異。這裡最重要的部分是,when 會與初始導覽要求中斷連線。從瀑布圖顯示的巨大間隙即可看出,這段時間代表初始載入與 Wikipedia API 要求之間經過的時間。
在瀏覽後經過一段時間才提出的要求,會歸類為「執行階段要求」,而不是您首次瀏覽網頁時,用於顯示網頁的初始要求集。
總結
完成本程式碼研究室的步驟後,您現在已熟悉可用於分析任何網頁應用程式載入內容的工具。
「網路」面板可協助您瞭解載入的內容,方法是查看「名稱」欄中的網址和「類型」欄中的資料,以及載入的時間 (透過瀑布式顯示)。
您也瞭解網頁發出的要求 (通常) 可歸類為下列兩種類型:
- 導覽至新網頁後,立即發出的 HTML、JavaScript、CSS (和其他資產) 初始要求。
- 使用者與網頁互動時發出的執行階段要求。這通常會從對 API 的要求開始,然後根據擷取的 API 資料,產生多個後續要求。