2016-11-15 88 views
1

我已經開始了Firefox的簡單網絡擴展,理論上應該根據遠程服務器的某些響應阻止訪問特定的網站。用戶嘗試導航,新頁面將不會被加載,直到從遠程服務器沒有收到確認。不幸的是,遠程「檢查」服務器僅限於每個用戶一秒鐘的幾個請求,所以我不能(並且沒有必要)檢查用戶導航到某個頁面後所做的每個請求。有沒有什麼方法可以在完成任何請求之前偵聽「真實」導航而不是所有請求並將整個選項卡重定向到某處?WebExtension重定向和阻止網站

我試過插件API:內容解僱後

  • 標籤事件已收到,這是不是很好。

  • 「http-on-modify-request」事件針對每個請求單獨發送垃圾郵件遠程檢查服務器。

WebExtensions:

  • browser.webNavigation.onBeforeNavigate好像我需要什麼,但我不能沒有發送檢查請求沒有從那裏重定向,我不知道我會能。
+0

在沒有收到*的情況下,如何加載?(超時?)? (即「新的頁面將*不被加載*直到從遠程服務器沒有收到確認*」 – Makyen

+0

這個問題對於堆棧溢出格式來說太寬泛了,可能有太多的方法來實現它。就是跟蹤被允許的URL /域名,然後你只需要第一次請求授權,那麼你就會記住這個響應並將它用於將來對該域名的任何請求,甚至你*實施這個太廣泛了。 – Makyen

回答