Web技術基礎
關於Service Worker的說明,下列何者正確?
- A持續在Web伺服器上運作,依瀏覽器送來的請求負責查詢資料庫的程式
- B直接改寫網頁的DOM以加快繪製的CSS功能,也可以在非HTTPS的網頁上使用
- C與網頁分開在瀏覽器中運作的指令碼,能攔截網頁的請求並回傳已保存的回應,用於離線顯示
查看答案與解析
正確答案:C. 與網頁分開在瀏覽器中運作的指令碼,能攔截網頁的請求並回傳已保存的回應,用於離線顯示
Service Worker是由網頁登錄、與網頁分開在瀏覽器中運作的指令碼。它接收該來源之網頁送出的請求(fetch事件),可以用指令碼決定要送往網路,還是回傳先前保存的回應。使用它,就能在離線時顯示網頁,或接收推播通知。由於具有攔截通訊的強大權限,只能在HTTPS的網頁(以及開發用的localhost)上使用,而且無法直接存取DOM。
- A. 在伺服器上運作的是應用程式伺服器等,Service Worker在瀏覽器中運作。
- B. Service Worker是以JavaScript撰寫的指令碼,無法直接存取DOM。
- C. 正確。攔截網頁的請求,用於以已保存的回應進行離線顯示等。