2016-06-07 30 views
0

我正在開發使用proxy api的Chrome擴展。在我的表現,我宣佈允許作爲例子:chrome.proxy缺少擴展名,並聲明瞭代理權限

{ 
    "manifest_version": 2, 
    "version": "0.1", 
    "name": "My extension", 
    "content_scripts": [{ 
    "matches": ["localhost"], 
    "js": ["content.js"], 
    "run_at": "document_start" 
    }], 
    "permissions": [ 
    "proxy" 
    ] 
} 

這實際上是在四月中旬的工作,但現在載入它備份(在我的瀏覽器,並在同事的)鉻代理API是永遠可用(即使切換到chrome dev控制檯中的擴展/ content.js上下文) - chrome.proxy只是未定義。

文檔沒有提及它,但是chrome.proxy API已被棄用?

回答

0

What's New in Extensions開始,從Google Chrome 13開始,chrome.proxy API依靠ChromeSetting prototype of the type API來獲取和設置代理配置。

在鑲邊設置文檔,有人指出:

ChromeSetting原型提供一組通用的功能(get()set()clear())以及針對Chrome的設置的事件發佈者(onChange)瀏覽器。

Chrome區分瀏覽器設置的三個不同範圍,並按不同層次管理設置,這些設置可能會影響有效設置,並按照優先順序的順序進行設置。由操作系統提供

  1. 系統設置
  2. 命令行參數
  3. 設置通過擴展提供
  4. 政策

隨着名單意味着,政策可能會否決任何改變你用你的擴展名指定。您可以使用get()函數來確定您的分機是否能夠提供設置或是否會覆蓋此設置。

請嘗試瀏覽文檔以獲取有關代理配置更改的更多詳細信息。

+0

這似乎沒有關係 - chrome.proxy *應該*仍然存在。正如您所鏈接的文檔所說的那樣,它可能會被優先級更高的設置覆蓋,但它不應該完全刪除API。在我的情況下,權限被正確識別[0],但chrome.proxy未定義。 [0] https://www.dropbox.com/s/z2ledho42y9yxwg/Screenshot%202016-06-07%2012.49.09.png?dl=0 – sgrove