6

मैं FileSystem APIHTML5 FileSystem API

function initFS(grantedBytes) { 
    window.requestFileSystem(window.PERSISTENT, grantedBytes, function (filesystem) { 
     fs = filesystem; 

     fs.root.getFile('log.txt', { create: true, exclusive: true }, function (fileEntry) { 

      // fileEntry.isFile === true 
      // fileEntry.name == 'log.txt' 
      // fileEntry.fullPath == '/log.txt' 
      console.log(fileEntry.fullPath); 



     }, errorHandler); 
    }, errorHandler); 
} 

initFS(1024*1024); 

द्वारा फ़ाइल 'log.txt' बनाया है और पूरी तरह से इसकी संरचना समझ में नहीं आता। क्या Windows Explorer से उदाहरण के लिए इस फ़ाइल का पता लगाने का कोई तरीका है और इसे फ़ाइल सिस्टम में देखें?

+1

एचटीएमएल 5 फाइल सिस्टम सैंडबॉक्स है: विंडोज से इसे एक्सेस करने का कोई आसान तरीका नहीं है। मेजबान फ़ाइल सिस्टम पर हमला करने से शत्रुतापूर्ण कोड को रोकने के लिए यह एक सुरक्षा सुविधा है। –

+0

और मैं इस फ़ाइल में स्क्रिप्ट टैग के स्रोत भी सेट नहीं कर सकता ??? –

+0

उत्तर नहीं है, और अच्छे कारणों से। कारणों के साथ एक और पूर्ण उत्तर, मेरे उत्तर में यहां बताया गया है: http://stackoverflow.com/a/19281109/2567232 – PhilNicholas

उत्तर

3

सॉर्ट करें, फ़ाइल-सिस्टम एपीआई स्थानीय रूप से संग्रहीत डेटा को एन्क्रिप्ट नहीं करता है। हालांकि यह फ़ाइल नामकरण सम्मेलनों को बदलता है। तो हो सकता है कि आपने इसे log.txt नाम दिया हो लेकिन यदि आप फ़ाइल-सिस्टम एपीआई फ़ाइलों को संग्रहीत करते हैं, तो आप शायद इसे मनमाने ढंग से जेनरेट किए गए फ़ाइल नाम जैसे "00010" या "24/00123" जैसी यादृच्छिक निर्देशिका में पा सकते हैं।

वैसे भी, आप प्रत्येक फ़ाइल को एक टेक्स्ट एडिटर में खोल सकते हैं - अगर आपकी फ़ाइल में टेक्स्ट लिखा गया है तो आप इसे इस तरह देख पाएंगे। या यदि आपने फ़ाइल-सिस्टम एपीआई में JSON लिखा है तो यह टेक्स्ट एडिटर में खोले जाने पर मानव-पठनीय स्ट्रिंग प्रारूप में होगा।

विंडोज 7 पर, Chrome के साथ इसे यहाँ पाया:

C:\Users\{user}\AppData\Local\Google\Chrome\User Data\Default\File System\ 

आप जहां यह क्रोम के माध्यम से संग्रहीत किया जाता है अन्य ओएस पर पता लगाने के लिए चाहते हैं this post

0

लॉग फ़ाइलों को देखने के लिए कृपया है कि एक अंतिम-उपयोगकर्ता या रखरखाव शायद देखना चाहता है सामान्य फाइल सिस्टम में किसी जगह को संग्रहीत किया जाना चाहिए। जबकि चेक किए गए उत्तर से पता चलता है कि HTML5 API का उपयोग कब किया जाता है, यह स्थान परिवर्तन के अधीन है और खोजने में परेशानी है।

एक बेहतर समाधान उपयोगकर्ता लॉग फाइल (और शायद अन्य फ़ाइलें) जब अनुप्रयोग स्थापित किया गया है, के लिए निर्देशिका chrome.fileSystem.chooseEntry का उपयोग कर चयन करने के लिए, और फिर उस प्रविष्टि को बनाए रखने और स्थानीय भंडारण में सहेज है, इसलिए यह बाद के लॉन्च पर पुन: उपयोग किया जा सकता है।

3

एक आसान तरीका भी है। क्रोम पर, इन यूआरएल पर जाएं।
http के लिए, यह "filesystem:http://"+location.host+"/persistent/" है।
https के लिए, यह "filesystem:https://"+location.host+"/persistent/" है।