जावास्क्रिप्ट एसडीके के साथ फाइलों को स्टोर और सर्व करें
aura.storage का रोजमर्रा का प्रवाह, रनिंग स्टैक के विरुद्ध देखे गए एक्सेस नियमों के साथ।
1. बाल्टियाँ
एक बकेट फ़ाइलों को समूहित करता है और निर्णय लेता है कि वे सार्वजनिक हैं या नहीं। बकेट बनाने और हटाने के लिए service_role कुंजी की आवश्यकता होती है। उन्हें सूचीबद्ध करने के लिए एक साइन-इन उपयोगकर्ता या service_role कुंजी की आवश्यकता होती है; अकेले सार्वजनिक कुंजी को 403 मिलता है।
एक बकेट fileSizeLimit (बाइट्स में) और allowedMimeTypes को भी स्वीकार करता है। एक अपलोड जो बहुत बड़ा है वह 413 लौटाता है, और एक प्रकार जिसकी अनुमति नहीं है वह 400 लौटाता है।
2. अपलोड करें, डाउनलोड करें, सूचीबद्ध करें, हटाएं
क्या उम्मीद करें:
- किसी मौजूदा पथ को अपलोड करने पर
409मिलता है जब तक कि आपupsert: trueपास नहीं कर लेते। - अपलोड करने के लिए एक साइन-इन उपयोगकर्ता या
service_roleकुंजी की आवश्यकता होती है। अकेले सार्वजनिक कुंजी को403मिलता है, यहां तक कि सार्वजनिक बाल्टी के लिए भी। ..के साथ एक पथ को के साथ400से अस्वीकार कर दिया गया है।- पथ एक बकेट के अंदर साझा किए जाते हैं। यदि किसी अन्य उपयोगकर्ता के पास पहले से ही पथ है, तो आपको
409मिलता है। प्रत्येक उपयोगकर्ता की फ़ाइलों को उनके स्वयं के फ़ोल्डर के अंतर्गत रखें, जैसे${user.id}/…।
3. एक फ़ाइल साझा करें
दोनों लिंक बिना किसी कुंजी के लाए गए और फ़ाइल लौटा दी गई। एक हस्ताक्षरित लिंक expires_in सेकंड के बाद काम करना बंद कर देता है। किसी ब्राउज़र को कुंजी के बिना अपलोड करने देने के लिए, सर्वर createSignedUploadUrl(path) (एक service_role कॉल) करता है।
4. कौन क्या कर सकता है
| कार्रवाई | सार्वजनिक कुंजी | साइन-इन किया हुआ उपयोगकर्ता | service_role |
|---|---|---|---|
| सार्वजनिक बकेट में फ़ाइल पढ़ें | हाँ | हाँ | हाँ |
| पढ़ें, किसी फ़ाइल को निजी बकेट में सूचीबद्ध करें | नहीं | केवल उसका स्वामी | हाँ |
| अपलोड करें | नहीं | हाँ | हाँ |
| किसी फ़ाइल को बदलें या हटाएँ | नहीं | केवल उसका स्वामी | हाँ |
| बाल्टियाँ सूचीबद्ध करें | नहीं | हाँ | हाँ |
| बकेट बनाएँ, हटाएँ | नहीं | नहीं | हाँ |
स्वामी वह उपयोगकर्ता है जिसने फ़ाइल अपलोड की है. वास्तविक रूप से, कोई दूसरा उपयोगकर्ता पहले उपयोगकर्ता की फ़ाइल को निजी बकेट में सूचीबद्ध, डाउनलोड या हटा नहीं सकता है, और उसे प्रतिस्थापित भी नहीं कर सकता है।
5. किसी सर्वर से ले जाएँ और कॉपी करें
छवि का आकार बदलना भंडारण संदर्भ में वर्णित है।