6

के साथ एक स्थानीय निर्देशिका सूचीबद्ध करें मैं क्रोम एक्सटेंशन बनाने की कोशिश कर रहा हूं जो नई फ़ाइलों के लिए स्थानीय निर्देशिका स्कैन करता है ... हालांकि, अगर मैं फ़ाइल जोड़ता हूं: // * मैनिफेस्ट की अनुमति मैं एक्सेस कर सकता हूंक्रोम एक्सटेंशन

xmlhttp.open("GET","file://C:/Users/username/Desktop/",false); xmlhttp.send(); console.log(xmlhttp.response);

साथ क्रोम के आंतरिक फ़ाइल ब्राउज़र प्रतिक्रिया से मैं फ़ाइल में URL निकालें और उन्हें मेरे एक्सटेंशन में इस्तेमाल कर सकते हैं।

मेरा प्रश्न अब है: क्या अन्य दृष्टिकोण हैं? उपर्युक्त तरीका वर्कअराउंड की तरह दिखता है और आसानी से तोड़ता है यदि क्रोम का फ़ाइल ब्राउज़र बदल जाता है ...

उत्तर

3

किसी भी समय मुझे क्रोम एक्सटेंशन से स्थानीय मशीन पर कुछ करना पड़ता है, मैंने हमेशा एक छोटा प्रोग्राम बनाया है जो HTTP के माध्यम से कनेक्शन स्वीकार करता है, और सामान्य प्रोग्राम के रूप में काम करता है, जो पोस्ट पर JSON के साथ आदेश लेता है। यह आपको बहुत लचीलापन देता है, क्योंकि यह अनिवार्य रूप से आपको क्रोम एक्सटेंशन लिखने की अनुमति देता है जो डेस्कटॉप प्रोग्राम कुछ भी कर सकता है।

हालांकि, इसके लिए बहुत कम डाउनसाइड्स हैं, और आपको केवल जरूरी होने पर ही ऐसा करना चाहिए। उदाहरण के लिए:

  • आप सभी ऑपरेटिंग सिस्टम के लिए ऐसा नहीं कर सकते हैं, जब तक कि आप प्रत्येक ओएस के लिए एजेंट नहीं लिखेंगे।
  • एक्सटेंशन को Google की एक्सटेंशन होस्टिंग से इंस्टॉल नहीं किया जा सकता है।
  • आपको write your own installation program that registers the extension होना चाहिए।
  • इस बारे में चिंता करने के लिए बहुत ही वास्तविक सुरक्षा विचार हैं। आप एक वेब सेवा खोलेंगे जो कमांड निष्पादित करता है। बहुत सुनिश्चित करें कि आप उपयोगकर्ता को उजागर नहीं कर रहे हैं। सभी हकीकत में, यदि आप एक फ़ाइल ब्राउज़र बना रहे हैं, तो आप शायद उपयोगकर्ता को उजागर कर रहे हैं। इस सुरक्षा छेद को ठीक करने के लिए आप पर निर्भर रहेंगे, जैसे कि आप कोई अन्य वेब सेवा बना रहे थे।
संबंधित मुद्दे