मैं किसी ऐसे व्यक्ति को कार्ड बेचने का एक तरीका ढूंढ रहा हूं जिसमें एक अनूठा कोड होगा जो वे बाद में एक फ़ाइल (एमपी 3, पीडीएफ, इत्यादि) डाउनलोड करने के लिए उपयोग कर सकेंगे, मास्क सही फ़ाइल स्थान इसलिए फ़ाइल डाउनलोड करने वाला एक समझदार व्यक्ति फ़ाइल को एक से अधिक बार डाउनलोड नहीं कर पाएगा। बैंडविड्थ पर सहेजने के लिए अमेज़ॅन एस 3 पर फ़ाइल होस्ट करना अच्छा होगा जहां हमारा सर्वर सह-स्थित है।फ़ाइलों को डाउनलोड करने के लिए एक बार यूआरएल प्रदान करने के लिए Django/Python समाधान क्या है?
कोड के लिए मेरा विचार उन अद्वितीय कोडों को प्री-जेनरेट करना होगा जो कार्ड पर मुद्रित होंगे और उन डेटाबेस को स्टोर करेंगे जिनके पास एक फ़ील्ड भी हो सकता है जो फ़ाइल को डाउनलोड करने की संख्या को संग्रहीत करता है। इस तरह हम सेट कर सकते हैं कि हम उपयोगकर्ता को फ़ाइल डाउनलोड करने के लिए कितने प्रयास करेंगे।
जिस भाग को मुझे दिशा की आवश्यकता है वह है कि मैं मूल फ़ाइल स्थान को कैसे छुपा/मुखौटा कर सकता हूं ताकि लोग उस यूआरएल को चोरी न कर सकें और फिर जितनी बार चाहें फ़ाइल डाउनलोड कर सकें। मैंने Google खोज की है और मैं या तो सही कीवर्ड का उपयोग नहीं कर रहा हूं या इस प्रकार की चीज़ के लिए पहले से ही बहुत सारे पुस्तकालय या स्निपेट नहीं हैं।
मुझे लगता है कि मैं django.views.static.serve
का उपयोग करके कुछ भी करने में सक्षम हो सकता हूं जो वास्तविक फ़ाइल और फ़ाइल डाउनलोड करने वाले उपयोगकर्ता के बीच प्रॉक्सी के प्रकार के रूप में कार्य करता है। इस विधि में एकमात्र कमी मुझे लगता है कि मुझे वास्तविक वेब सर्वर का उपयोग करने की आवश्यकता होगी और अमेज़ॅन एस 3 पर फ़ाइल को स्टोर करने में सक्षम नहीं होगा।
किसी भी सुझाव या विचारों की बहुत सराहना की जाती है।
यह सबसे बुनियादी दृष्टिकोण है, लेकिन यदि आप इनमें से बहुत सारी फाइलें करते हैं तो आपके सर्वर को चोट पहुंच सकती है, क्योंकि पूरी फाइल को वसा पायथन/डीजेगो सर्वर थ्रेड के माध्यम से स्ट्रीम किया जाना है। –
हां, यह एक सुपर फास्ट समाधान नहीं है, लेकिन ऐसा लगता है कि उनकी स्थिति में प्रदर्शन एक समस्या नहीं होने वाला है। उसे शारीरिक रूप से प्रत्येक उपयोगकर्ता को कार्ड बेचना पड़ता है, इसलिए मैं प्रतिदिन 100 डाउनलोड के करीब कहीं भी उम्मीद नहीं करता। –