6

लक्ष्य: उपयोगकर्ता एक फ़ोल्डर का चयन करने की अनुमति दें, तो रिकर्सिवली सभी फाइलों को लगता है कि मेरे वेब सर्वरफ़ाइलें अपलोड करें webapp को

के लिए एक फ़ाइल पैटर्न और हस्तांतरण (बाद का) से मेल खाता है संक्षेप में बस एक और उन्नत अपलोड संवाद ...

मानक वेब तकनीक (हम प्लूपलोड का उपयोग कर रहे हैं) सुरक्षा कारणों से, इसका समर्थन नहीं करते हैं, afaik।

अतिरिक्त आवश्यकताएं: वेबपैड से उपयोग/इंस्टॉल करने में आसान। एसएसएल और ऐप उपयोगकर्ता प्रमाण पत्र की आवश्यकता है। अपलोड फ़ाइलों को जोड़ने के लिए रिकॉर्ड आईडी (वेब ​​ऐप से प्राप्त या बनाएं) जैसे कुछ अन्य डेटा अच्छे होंगे।

वेब ऐप स्वयं रूबी पर रूबी में लिखा गया है, लेकिन मुझे वास्तव में कोई फर्क नहीं पड़ता कि मुझे किसी मूल मैक और विंडोज (मेरे उपयोगकर्ताओं का 80%) डेस्कटॉप क्लाइंट चाहिए।

मेरे विकल्प क्या हैं?

ऐसा करने के लिए ओपन सोर्स libs के कोड और संदर्भ एक बोनस है।

+0

"सभी फाइलों को दोबारा ढूंढें जो फ़ाइल पैटर्न से मेल खाते हैं" जैसे, क्या आप किसी फ़ोल्डर से सभी पीएनजी (लेकिन संभवतः jpgs) अपलोड करने की कोशिश कर रहे हैं? आप वास्तव में प्रक्रिया करने की कोशिश कर रहे हैं? – whitehat101

+0

पहला: सही। दूसरा: आपका क्या मतलब है, फ़ाइल प्रकार क्या है? * .dcm – oma

उत्तर

4

मैं एक एडोब एयर ऐप बनाने की सलाह दूंगा।

आप अपने मौजूदा प्लूपलोड जेएस कोड का पुन: उपयोग कर सकते हैं और इसे एडोब एयर एपिस के साथ बढ़ा सकते हैं। आदर्श रूप में, यह अधिकतर स्थैतिक ऐप होगा लेकिन नीति दस्तावेज़ बनाने के लिए एक सर्वर कॉल करें, और अपलोड पर कोई भी पुस्तक-रख-रखाव करना चाहते हैं। Accessing AIR API classes from JavaScript पर एक चोटी लें। फिर filesystem.File कक्षा में देखें।

फ्लैश में 99.3% प्रवेश की तरह कुछ है, और इसके साथ उपयोगकर्ता बस "मेरा अपलोडर इंस्टॉल करें" पर क्लिक करता है और यदि आवश्यक हो तो एयर फ्रेमवर्क स्वचालित रूप से इंस्टॉल हो जाता है। एयर एंड्रॉइड और iDevices पर भी है, इसलिए आपका ऐप शायद 99.9 99% उपयोगकर्ताओं और उनकी मां के लिए उपलब्ध होगा।

यह मुझे यह पता लगाने के लिए एक मिनट ले लिया है, लेकिन यहाँ Adobe® AIR® API Reference for HTML Developers

है ओह देखो क्या मैं उनके उदाहरण में पाया:

var directory = air.File.documentsDirectory; 

try 
{ 
    directory.browseForDirectory("Select Directory"); 
    directory.addEventListener(air.Event.SELECT, directorySelected); 
} 
catch (error) 
{ 
    air.trace("Failed:", error.message) 
} 

function directorySelected(event) 
{ 
    directory = event.target ; 
    var files = directory.getDirectoryListing(); 
    for(var i = 0; i < files.length; i++) 
    { 
     air.trace(files[i].name); 
    } 
} 
1

मैं इस तरह से कुछ से शुरू करने वाला क्लाइंट बनाना चाहूंगा: https://github.com/ms4720/s3sync ताकि आप इसे रूबी परिवार में रख सकें। यदि आपको एक दोस्ताना gui की आवश्यकता है: http://shoesrb.com/tutorials/

+0

यह नियमित उपयोगकर्ताओं के लिए काम नहीं करेगा। रूबी जरूरी नहीं है और न ही जनता को एस 3 प्रमाण पत्र दिए जा सकते हैं। संक्षेप में मुझे बस एक और उन्नत अपलोड संवाद की आवश्यकता है – oma

0

मुझे अभी भी लगता एक एडोब एयर अनुप्रयोग के लिए एक ठोस समाधान है तुम्हारी समस्या। आसान इंस्टॉल/अपडेट प्रदान करता है, एसएसएल का समर्थन करता है, आपको उपयोगकर्ता अनुभव, 110% क्रॉस प्लेटफॉर्म इत्यादि पर पूर्ण नियंत्रण देता है ... हालांकि यदि आप एडोब से नफरत करते हैं या यूआई कोड लिखते हैं, तो क्या आपने वेबडाव/डेव 4 मैक मणि देखा है?

https://github.com/bryanrite/dav4rack-example-devise-subdirectories

GitHub उदाहरण प्रमाणीकरण के लिए एक रेल app में वसीयत का उपयोग करता है, और जहां वे किसी भी WebDAV ग्राहक के माध्यम से फ़ाइलें अपलोड कर सकते एक निजी बाल्टी तक पहुँचने के लिए एक उपयोगकर्ता के लिए एक ही साख का इस्तेमाल किया है। आपका वेब ऐप एक लिंक प्रदान कर सकता है जिसमें URL को यूजरनेम में अधिक सुविधाजनक बनाने के लिए यूजरनेम शामिल है।

ओएस एक्स का फ़ाइंडर खोजक के "सर्वर से कनेक्ट करें" संवाद (10.1.1 के बाद) के माध्यम से वेबडिव का मूल रूप से समर्थन करता है।

यदि आपका उपयोगकर्ता लिनक्स का उपयोग करता है, तो मुझे यकीन है कि वे WebDav को समझ सकते हैं।

http://en.wikipedia.org/wiki/WebDAV स्कैनिंग से यह विंडोज 9 8 में वेब समर्थित वेबडैव की तरह दिखता है। हालांकि, हर दूसरे वेब मानक के साथ, माइक्रोसॉफ्ट ने, उम, रचनात्मक होने का फैसला किया है। ऐसा लगता है जैसे उपयोगकर्ता KB892211, KB907306, Office, Internet Explorer, OLE-DB और/या "वेब फ़ोल्डरों के लिए माइक्रोसॉफ्ट अपडेट" के साथ अद्यतित है, तो वे आसानी से विभिन्न प्रमाणीकरण योजनाओं के साथ SSL पर वेबडैव फ़ोल्डरों तक पहुंचने में सक्षम होना चाहिए। मुझे यकीन है कि आपके सभी विंडोज उपयोगकर्ता सभी नवीनतम अपडेट और एक पूर्ण ऑफिस सूट के साथ वास्तविक विंडोज का उपयोग कर रहे हैं।

के बाद से अपने रेल एप्लिकेशन WebDAV सर्वर है, तो आप त्रुटियों (सर्वर से उस फ़ाइल नहीं लिख सकता), बाद प्रक्रिया अपलोड की गई फ़ाइलों/निर्देशिकाओं, फेंक और (जो भी बहीखाता आप की जरूरत है आप में सक्षम हो जाएगा उपयोगकर्ता के खाते के साथ, उन्होंने जो अपलोड किया है उसके साथ)। Dav4rack बहुत अच्छा है। आप बैकएंड, या डेटाबेस के रूप में एक वास्तविक फाइल सिस्टम का उपयोग कर सकते हैं, या अपलोड की गई फ़ाइलों को S3 पर बाउंस कर सकते हैं, या बस कुछ भी जो आप रूबी में कर सकते हैं।

मुझे नहीं लगता कि यह समाधान आपके "सभी फाइलों को दोबारा ढूंढने के लिए जो एक फ़ाइल पैटर्न से मेल खाता है" घटक के साथ-साथ एयर ऐप भी कर सकता है। असली दुनिया के अनुभव के बिना, मैं कल्पना करता हूं कि अपलोड पूरा होने के बाद पैटर्न मिलान होगा (संभावित रूप से बैंडविड्थ अक्षम)।

+0

आप वास्तव में यह बक्षीस, जेरेमी, हाहा चाहते हैं। यकीन नहीं है कि मैं WedDav के बारे में क्या सोचता हूं, लेकिन साझा करने के लिए धन्यवाद। जब एक क्यू मेरे लिए बहुत महत्वपूर्ण है, तो मैं जितना संभव हो सके उतने कोण प्राप्त करने के लिए बाउंटी जोड़ता हूं। आप इसे एडोब एयर उत्तर के लिए कमाएंगे। एक बार फिर धन्यवाद। – oma

+0

मेरी कंपनी अपलोड करने वाले टूल पर विचार कर रही है। मैंने एक रेल ऐप के हिस्से के रूप में बनाया जो सीधे एस 3 (एयर ऐप नहीं) पर धक्का दिया, लेकिन यह पता चला कि उसके साथ कुछ कर्कश थे। हमने इसे काम किया, लेकिन केवल चांदी की रोशनी के साथ। फ़्लैश अपलोड प्रगति नहीं हो सका, भ्रष्ट फाइलों के साथ कुछ मुद्दे थे। एचटीएमएल 5 विफल रहता है, HTML4 kinda w/o प्रगति का काम करता है, और मुझे लगता है कि इसे कस्टम हेडर की आवश्यकता है। यह उस बिंदु पर पहुंचा जहां मैं एस 3 के लिए बहुत ज्यादा महसूस करता हूं उत्पादन के लिए तैयार नहीं है। मैं चीजों को फिर से काम करने और अधिक एयर ऐप्स बनाने के बारे में सोच रहा हूं, लेकिन यह मेरे लिए अगली परियोजना पर है! – whitehat101

संबंधित मुद्दे