2011-10-04 13 views
20

'daki uzantı klasörünün içine alın Yerel bir dosyayı uzantı dizininden alamıyorum. Uzatma dizininin kendisi'un içinde olan bir dosyayı almak mümkün mü?Yerel dosyayı Chrome

cevap

26

Evet, ancak yalnızca dosya yolunu biliyorsanız; çünkü dizin listesini almanın bir yolu yoktur.

Yol biliniyorsa, chrome.extension.getURL dosya uzantısını uzantı kapsamına döndürür.

Örneğin

: Böyle chrome.extension.getURL('some_folder/some_file.js') çıkışları şey:

chrome-extension://kfcphocilcidmjolfgicbchdfjjlfkmh/some_folder/some_file.js 

chrome-extension protokol artı uzatma id, uzantının kök klasörünün adresidir. Yol yanlışsa veya dosya mevcut olmasa bile bu işlev bir URL döndürür.

Ayrıca, daha güçlü bir şeye ihtiyacınız varsa, yeni FileSystem API's numaralı telefonu okuyabilirsiniz. Bununla, kullanıcının yerel dosya sisteminin korumalı bir bölümünü oluşturabilir, okuyabilir, gezinebilir ve yazabilirsiniz.

+0

. Teşekkürler! – Donovan

+0

Çok teşekkürler ..... – anunixercoder

8

Chrome 17 veya daha yeni sürümünde, bunun çalışması için, uzantı içinde bir görüntünün bir web sayfasına enjekte edilmesini sağlamak için web_accessible_resources bölümünü eklemeniz gerekir. http://developer.chrome.com/extensions/manifest.html#web_accessible_resources

{... 
"web_accessible_resources": [ 
"images/my-awesome-image1.png", 
"images/my-amazing-icon1.png" 
],...} 

(jhaury izniyle) Ben gerekenler

+0

Bunu yaptım ama hala dosyamı chrome-extension: // ... 'biçiminde yükleyemiyorum. Bu bir JSON dosyası, her zaman 404s. Herhangi bir fikir? – callum

İlgili konular