2011-10-04 13 views
20

में एक्सटेंशन फ़ोल्डर के अंदर स्थानीय फ़ाइल प्राप्त करें मुझे पता है कि मुझे विस्तार निर्देशिका में से स्थानीय फ़ाइल नहीं मिल सकती है। के अंदर एक एक्सटेंशन निर्देशिका है जो फ़ाइल निर्देशिका प्राप्त करना संभव है?क्रोम

उत्तर

26

हाँ आप कर सकते हैं, लेकिन केवल तभी यदि आप फ़ाइल पथ जानते हैं; क्योंकि निर्देशिका सूची प्राप्त करने का कोई तरीका नहीं है।

यदि पथ ज्ञात है, chrome.extension.getURL एक्सटेंशन दायरे में फ़ाइल यूआरएल वापस कर देगा।

उदाहरण के लिए: chrome.extension.getURL('some_folder/some_file.js') इस तरह outputs कुछ:

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

chrome-extension प्रोटोकॉल के साथ साथ विस्तार आईडी, एक्सटेंशन के रूट फ़ोल्डर का पता है। ध्यान दें कि यह फ़ंक्शन एक URL लौटाएगा भले ही पथ गलत है या फ़ाइल मौजूद नहीं है।

इसके अलावा, अगर आपको कुछ और शक्तिशाली की आवश्यकता है, तो आप ब्रांड FileSystem API's ब्रांड के बारे में पढ़ सकते हैं। इसके साथ आप उपयोगकर्ता की स्थानीय फाइल सिस्टम के सैंडबॉक्स वाले अनुभाग को बना, पढ़ सकते हैं, नेविगेट और लिख सकते हैं।

+0

है यही कारण है कि मैं क्या जरूरत है। धन्यवाद! – Donovan

+0

बहुत धन्यवाद ..... – anunixercoder

8

क्रोम 17 या बाद में, इस काम के लिए आपको web_accessible_resources अनुभाग शामिल करना होगा ताकि विस्तार के भीतर पैक की गई छवि को वेब पेज में इंजेक्शन दिया जा सके। http://developer.chrome.com/extensions/manifest.html#web_accessible_resources

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

(jhaury के सौजन्य से)

+0

मैंने यह किया है लेकिन मैं अभी भी 'क्रोम-एक्सटेंशन: // ...' प्रारूप के माध्यम से अपनी फ़ाइल लोड नहीं कर सकता। यह एक JSON फ़ाइल है, यह हमेशा 404s है। कोई विचार? – callum