2015-10-08 51 views
-1

我正在學習如何編寫Chrome擴展,因爲我需要在我們的本地環境中進行測試。我正在嘗試製作清單文件的部分,告訴它哪些URL可以運行,但我們的測試環境網址無法使用它。我們例如域映射是這樣的:如何過濾Chrome擴展中不以http或https開頭的URL

Example.com instead of http://example.com

不過,當我把這個在我的清單設置,這讓我對無效網址的錯誤沒有

清單代碼在這裏:

{ 
    "manifest_version": 2, 
    "name": "K Domain Cleaner", 
    "version": "0.1", 
    "content_scripts": [ 
    { 
     "matches": ["<all_urls>"], 
     "js": ["jquery.js", "kc-domaincleaner-1.0.js"] 
    } 
    ] 
} 

當我嘗試設置匹配屬性,象這樣:

{ 
    "manifest_version": 2, 
    "name": "K Domain Cleaner", 
    "version": "0.1", 
    "content_scripts": [ 
    { 
     "matches": ["Dev3.com"], 
     "js": ["jquery.js", "kc-domaincleaner-1.0.js"] 
    } 
    ] 
} 

我得到以下錯誤:

Failed to load extension from: ~\Desktop\Chrome Extensions Invalid value for 'content_scripts[0].matches[0]': Missing scheme separator

所以它不僅會在我們的測試域下運行。爲什麼我不能使用http://的前綴,並且有辦法解決這個問題。 http://Dev3.com與Dev3.com完全不同。提前致謝。

+2

這個問題沒有意義,因爲沒有一個傳輸協議(無論是'http'或其他)**網站**無法到達(顯然)。而「網站」不是你的網絡「域名」。另外,您是否閱讀過[匹配模式](https://developer.chrome.com/extensions/match_patterns)的文檔? – wOxxOm

+0

我知道什麼http協議以及如何到達網站。我從事網絡應用程序開發已有9年,從美國航空航天局研究部門開始,然後是惠普公司,並跳過大學。我剛從這家公司開始,認爲他們這樣做的原因與URL規範化相似。如果您使用http或https作爲前綴,則網站測試環境不會加載。 (是的,我知道規範化是基於www前綴,但概念是一樣的。編目等。 – Casey

+0

在發佈之前,我確實閱讀過文檔,但希望有一些解決方法,或者我忽略了一些東西,我受不了pompas回答社區用戶提出的問題是的,有些問題可能對某些人而言是荒謬的,而對另一些人則不是如此。這個網站和社區的目的是傳播知識和進步,而不是知識分子或社會地位。所以一個簡單的迴應會很好,而居高臨下的態度確實沒有必要,也沒有幫助。那麼爲什麼甚至發佈它。 – Casey

回答

2

This is invalid URL。

一個URL by definition must contain the scheme。沒有它,它可以被解釋爲一個地址,但不是什麼(和如何)你想要訪問在那個地址。

如果您在地址欄中輸入了一個沒有方案的域名,那麼默認情況下它假設爲http:,就像不輸入端口一樣假定某個默認值(取決於方案)。

在這種情況下,「http://Dev3.com是完全不同的,那麼Dev3.com」是沒有意義的,雖然它是嚴格符合的:一個是有效的URL,另一個只是一個字符串(恰好是一個有效的域名)。

請注意:Chrome只是從地址欄隱藏http://,但它隱含在那裏。這可能是你混淆的根源。請放心,http://example.com將覆蓋地址欄中顯示的地址example.com

正如您所提到的,您也應該使用take a look at the docs

+0

爲什麼如果我鍵入Dev3.com,它會在內部點擊環境,但是當我輸入https://Dev3.com時卻不會。對於無效網址的回答,是的,請在api中閱讀。 – Casey

+0

您在評論中的鏈接是'https:// Dev3.com',而不是'http:'。爲此,您可以使用匹配模式'*:// Dev3.com'來覆蓋http和https – Xan

+0

但請注意,指定路徑是強制性的。所以'*:// Dev3.com/*' – Xan

相關問題