உங்கள் ஆப்பில் file uploads சேர்ப்பது எப்படி: சேமிப்பு, வரம்புகள் மற்றும் பாதுகாப்பு
ஆப்பில் file uploads சேர்க்க, கோப்புகளை object storage-இல் (ஒரு bucket) சேமியுங்கள், server-இன் வட்டிலோ டேட்டாபேஸிலோ அல்ல, மேலும் கோப்பின் key, பெயர், அளவு, வகை மற்றும் உரிமையாளருடன் ஒரு சிறிய பதிவை டேட்டாபேஸில் சேமியுங்கள். கோப்பின் அளவு மற்றும் வகையை server-இல் சரிபாருங்கள், கோப்புகள் பொதுவானவையா (தயாரிப்புப் புகைப்படங்கள் போல) அல்லது தனிப்பட்டவையா (விலைப்பட்டியல்கள் போல) என்று முன்பே முடிவு செய்யுங்கள், தனிப்பட்ட கோப்புகளை யார் கேட்கிறார்கள் என்று சரிபார்த்த பின்னர் மட்டும் வழங்குங்கள். AI app builder-இல், ஒரு prompt-இல் upload அம்சத்தை விவரிக்கலாம்; முக்கியமானது, மறுவெளியீட்டுக்குப் பிறகும் கோப்புகள் நிலைத்திருக்கின்றனவா, தவறான நபர் அவற்றைத் திறக்க முடியாதா என்று சோதிப்பதுதான்.
நீங்களுக்கு என்ன வகை பதிவேற்றங்கள் தேவை என்று முடிவு செய்யுங்கள்
உருவாக்கும் முன் மூன்று கேள்விகளுக்குப் பதில் சொல்லுங்கள்:
- எந்தக் கோப்புகள்? சுயவிவரப் புகைப்படங்கள், தயாரிப்புப் படங்கள், PDFகள், விரிதாள்கள், ஆடியோ, வீடியோ. இது வகை மற்றும் அளவு வரம்புகளை நிர்ணயிக்கிறது.
- யார் பார்க்கலாம்? எல்லோரும் (ஒரு பொது gallery) அல்லது பதிவேற்றியவரும் நிர்வாகிகளும் மட்டும் (ஒப்பந்தங்கள், அடையாள ஆவணங்கள், வாடிக்கையாளர் கோப்புகள்).
- பதிவேற்றத்துக்குப் பிறகு என்ன நடக்கும்? வெறுமனே சேமிப்பதா, முன்னோட்டம் காட்டுவதா, படங்களின் அளவை மாற்றுவதா, அல்லது உள்ளடக்கத்தைப் படிப்பதா.
பொதுப் படங்களும் தனிப்பட்ட ஆவணங்களும் வெவ்வேறு அமைப்புகள் தேவைப்படுபவை, எனவே இதை முதலில் தீர்மானியுங்கள்.
கோப்புகள் எங்கே இருக்க வேண்டும்
| விருப்பம் | எப்படி வேலை செய்கிறது | எதற்கு ஏற்றது | கவனிக்க வேண்டியவை |
|---|---|---|---|
| Object storage (bucket) | அதற்கென உருவாக்கப்பட்ட சேவையில் கோப்புகள்; உங்கள் டேட்டாபேஸ் ஒரு key அல்லது URL-ஐ வைத்திருக்கும் | கிட்டத்தட்ட எல்லா ஆப்களும் | அணுகல் விதிகளைச் சரியாக அமைக்க வேண்டும் |
| Platform வழங்கும் சேமிப்பு | உங்கள் app builder அல்லது host உங்களுக்காக ஒரு bucket-ஐ இயக்கும் | அந்த platform-இல் உருவாக்கப்பட்ட ஆப்கள் | வரம்புகளும் விலையும் platform-ஐப் பின்பற்றும் |
| Server வட்டு | ஆப் server-இன் filesystem-இல் எழுதப்பட்ட கோப்புகள் | உள்ளூர் மேம்பாட்டுக்கு மட்டும் | மறுதொடக்கம் அல்லது redeploy-இல் பெரும்பாலும் அழிக்கப்படும் |
| டேட்டாபேஸில் | கோப்பின் bytes ஒரு table-இல் | கிட்டத்தட்ட ஒருபோதும் வேண்டாம் | டேட்டாபேஸைப் பெருக்கும், backups-ஐ மெதுவாக்கும் |
| மூன்றாம் தரப்பு upload widget | ஒரு hosted uploader சேவை முழு செயல்முறையையும் கையாளும் | பெரிய media, படத் மாற்றங்கள் | மற்றொரு vendor, கணக்கு, பில் |
பெரும்பாலான ஆப்களுக்கு, object storage மற்றும் ஒரு டேட்டாபேஸ் பதிவு என்பதே சரியான பதில். உங்கள் ஆப் வினவுவது டேட்டாபேஸ் வரிசைதான் ("இந்தப் பயனரின் ஆவணங்களைக் காட்டு"); bucket வெறும் bytes-ஐ வைத்திருக்கிறது.
பொது மற்றும் தனிப்பட்ட கோப்புகள்
- பொதுக் கோப்புகள் (தயாரிப்புப் புகைப்படங்கள், வலைப்பதிவுப் படங்கள், avatars) ஒரு பொது URL-இலிருந்து வழங்கப்படலாம். இணைப்பு உள்ள எவரும் அவற்றைத் திறக்கலாம், இந்த வகை உள்ளடக்கத்துக்கு இது சரி.
- தனிப்பட்ட கோப்புகள் (விலைப்பட்டியல்கள், ஒப்பந்தங்கள், மருத்துவ அல்லது அடையாள ஆவணங்கள், வாடிக்கையாளர் வழங்கல்கள்) ஒருபோதும் யூகிக்கக்கூடிய பொது URL-ஐப் பெறக்கூடாது. உள்நுழைந்த பயனர் கோப்பின் உரிமையாளர் அல்லது அனுமதி உள்ளவர் என்று server சரிபார்க்கும், பின்னர் அதை அனுப்பும் அல்லது ஒரு signed URL-ஐத் திருப்பித் தரும்: குறுகிய நேரத்துக்கு மட்டும் வேலை செய்யும் இணைப்பு.
பொதுவான, கடுமையான பிழை: தனிப்பட்ட கோப்புகளை எளிதில் ஊகிக்கக்கூடிய பெயர்களுடன் ஒரு பொது bucket-இல் வைப்பது. /uploads/invoice-102.pdf என்று யூகிப்பவர் யாரோ ஒருவரின் விலைப்பட்டியலைப் பெறுவார்.
எடுத்துக்காட்டு prompts
ஒரு பொதுப் படப் பதிவேற்றம்:
நிர்வாகிகள் ஒவ்வொரு தயாரிப்புக்கும் அதிகபட்சம் 5 தயாரிப்புப் புகைப்படங்களைப் பதிவேற்ற அனுமதிக்கவும். JPG, PNG, WebP ஒவ்வொன்றும் 5 MB வரை ஏற்கவும். கோப்புகளை file storage-இல் சேமித்து, ஒவ்வொரு கோப்பின் key, அளவு மற்றும் வரிசையை product_images table-இல் சேமிக்கவும், சிறுபடங்களை நீக்கும் பொத்தானுடன் காட்டவும். வகையையும் அளவையும் உலாவியில் மட்டுமல்லாமல் server-இல் சரிபார்க்கவும்.
ஒரு தனிப்பட்ட ஆவணப் பதிவேற்றம்:
உள்நுழைந்த வாடிக்கையாளர்களுக்கு ஒரு Documents பக்கம் சேர்க்கவும். வாடிக்கையாளர்கள் 20 MB வரையிலான PDFகளைப் பதிவேற்றலாம். கோப்புகள் தனிப்பட்டவை: file storage-இல் சேமித்து, உரிமையாளர் ID, அசல் கோப்புப் பெயர், அளவு மற்றும் பதிவேற்ற நேரத்தை documents table-இல் சேமிக்கவும், உரிமையாளரும் நிர்வாகிகளும் மட்டுமே பதிவிறக்கலாம். பதிவிறக்கங்கள் அனுமதியைச் சரிபார்க்கும் server route வழியாகச் செல்லட்டும். இந்தக் கோப்புகளுக்கு ஒருபோதும் பொது URL வேண்டாம்.
பயனுள்ள தொடர்ச்சிகள்:
பதிவேற்றத்தின்போது முன்னேற்றப் பட்டையையும், கோப்பு மிகப் பெரியதாக அல்லது தவறான வகையாக இருந்தால் தெளிவான பிழையையும் காட்டவும்.
ஒரு document வரிசை நீக்கப்படும்போது, சேமிக்கப்பட்ட கோப்பையும் நீக்கவும்.
படிப்படியாக
- ஒவ்வொரு upload புலத்துக்கும் வகைகளையும் அளவு வரம்புகளையும் தீர்மானியுங்கள். குறிப்பாக இருங்கள்: "documents" அல்ல, "20 MB வரை PDF".
- சேமிப்பை இயக்குங்கள். AI builder-இல், uploads கேளுங்கள், அது சேமிப்பை அமைக்கும்; வேறிடத்தில், ஒரு bucket உருவாக்கி அதன் credentials-ஐ server-side secrets ஆக வையுங்கள்.
- கோப்புப் பதிவுகளுக்கு ஒரு டேட்டாபேஸ் table உருவாக்குங்கள்: ID, உரிமையாளர், சேமிப்பு key, அசல் பெயர், வகை, அளவு, created-at.
- Server-இல் upload route-ஐ உருவாக்குங்கள்: பயனர் உள்நுழைந்திருக்கிறாரா என்று சரிபார்க்கவும், வகை மற்றும் அளவைச் சரிபார்க்கவும், பாதுகாப்பான சேமிப்பு key-ஐ உருவாக்கவும் (பயனரின் கோப்புப் பெயரை அல்ல), கோப்பைச் சேமித்து, பதிவைச் செருகவும்.
- பதிவிறக்கம் அல்லது காட்சிப்படுத்தும் வழியை உருவாக்குங்கள்: பொதுக் கோப்புகளுக்கு பொது URL; தனிப்பட்டவைக்கு அனுமதி சரிபார்க்கும் route அல்லது signed URL.
- UI-ஐ உருவாக்குங்கள்: கோப்புத் தேர்வி, தேவைப்பட்டால் drag and drop, முன்னேற்றம், முன்னோட்டங்கள், பிழைகள்.
- நீக்கங்களைக் கையாளுங்கள், ஒரு பதிவை அகற்றினால் சேமிக்கப்பட்ட கோப்பும் அகற்றப்பட வேண்டும்.
- சோதியுங்கள்: பதிவேற்றுங்கள், reload செய்யுங்கள், redeploy அல்லது publish செய்யுங்கள், கோப்பு இன்னும் ஏற்றப்படுகிறதா என்று பாருங்கள். பின்னர் வேறொரு பயனராக உள்நுழைந்து, முதல் பயனரின் தனிப்பட்ட கோப்பைத் திறக்க முயலுங்கள்.
பொதுவான தவறுகள்
- பதிவேற்றங்களை server-இன் வட்டில் எழுதுவது. மேம்பாட்டில் வேலை செய்யும், பிறகு மறுதொடக்கம் அல்லது redeploy-க்குப் பின் கோப்புகள் மறையும்.
- உலாவியின் சோதனைகளை நம்புவது. கோப்பு உள்ளீட்டின் "accept" அமைப்பு ஒரு குறிப்பு மட்டுமே, பாதுகாப்பு அல்ல. வகையையும் அளவையும் server-இல் சரிபாருங்கள்.
- பயனரின் கோப்புப் பெயரையே சேமிப்பு key ஆகப் பயன்படுத்துவது. பெயர்கள் மோதும், விசித்திரமான எழுத்துகளைக் கொண்டிருக்கலாம். ஒரு தனித்துவமான key உருவாக்கி, அசல் பெயரைத் தனியாகச் சேமியுங்கள்.
- தனிப்பட்ட கோப்புகளுக்கு பொது buckets. மேலே சொன்னபடி; இதுதான் செய்தியாகும் பிழை.
- எந்த கோப்பு வகையையும் அனுமதிப்பது. உங்கள் domain-இலிருந்து வழங்கப்படும் HTML அல்லது SVG கோப்புகள் சில அமைப்புகளில் scripts இயக்கக்கூடும். தேவையான வகைகளை மட்டும் ஏற்கவும்.
- அளவு வரம்பு இல்லாமை. ஒரு மிகப் பெரிய பதிவேற்றம் உங்கள் சேமிப்பு ஒதுக்கீட்டை விழுங்கலாம் அல்லது request-ஐ timeout ஆக்கலாம்.
- அனாதைக் கோப்புகள். டேட்டாபேஸ் வரிசையை நீக்கி கோப்பை நீக்காமல் விட்டால், நீங்கள் பணம் செலுத்தும் சேமிப்பு மெதுவாக நிரம்பும்.
- கைபேசியை மறப்பது. தொலைபேசிப் புகைப்படங்கள் பெரியதாகவும், HEIC போன்ற வடிவங்களிலும் இருக்கலாம்; அவற்றை ஏற்பதா அல்லது மாற்றுவதா என்று முடிவு செய்யுங்கள்.
சரிபார்ப்புப் பட்டியல்
- கோப்புகள் object storage-க்குச் செல்கின்றன, server வட்டுக்கோ டேட்டாபேஸுக்கோ அல்ல
- ஒவ்வொரு கோப்புக்கும் உரிமையாளர், key, பெயர், வகை மற்றும் அளவுடன் ஒரு டேட்டாபேஸ் பதிவு உள்ளது
- வகையும் அளவும் server-இல் சரிபார்க்கப்படுகின்றன
- சேமிப்பு keys உருவாக்கப்படுகின்றன, கோப்புப் பெயரிலிருந்து எடுக்கப்படுவதில்லை
- தனிப்பட்ட கோப்புகள் அனுமதிச் சரிபார்ப்புக்குப் பின்பே வழங்கப்படுகின்றன
- வேறொரு பயனர் இணைப்பு இருந்தாலும் உங்கள் தனிப்பட்ட கோப்புகளைத் திறக்க முடியாது
- பதிவை நீக்கினால் கோப்பும் நீக்கப்படுகிறது
- Publish அல்லது redeploy-க்குப் பிறகும் கோப்புகள் இன்னும் ஏற்றப்படுகின்றன
- பதிவேற்றப் பிழைகள், கைபேசியிலும் உட்பட, தெளிவாகக் காட்டப்படுகின்றன
Mythex-இல் file uploads
Mythex உங்கள் ஆப்புக்கு பதிவேற்றங்கள் தேவைப்படும்போது ஒரு project-க்கு file storage-ஐத் தானாக இயக்க முடியும், அதனால் bucket-ஐ கைமுறையாக அமைக்க வேண்டியதில்லை. Chat-இல் /storage என்றும் தட்டச்சு செய்யலாம். இது Free மற்றும் Pro-வில் கிடைக்கும், Free-இல் 1 GB வரம்புடன்; அதன் நிலையை Settings → Storage-இல் பார்க்கலாம்.
வெளியிடப்பட்ட hosting நிலையான உள்ளூர் filesystem அல்ல என்று ஆவணங்கள் தெளிவாகச் சொல்கின்றன, எனவே வட்டில் சேமிக்காமல் platform storage-ஐப் பயன்படுத்தும்படி agent-இடம் கேளுங்கள். சேமித்த கோப்புகளுக்கும் பதிவிறக்கங்களுக்கும் அளவு மற்றும் எவ்வளவு பதிவிறக்கப்படுகிறது என்பதன் அடிப்படையில் உங்கள் credit இருப்பிலிருந்து கட்டணம்; Pro, Free விகிதத்தில் பாதி செலுத்துகிறது. ஆவணங்களில் File storage பாருங்கள்.
Uploads பெரும்பாலும் கோப்புப் பதிவுகளுக்கான டேட்டாபேஸ் மற்றும் தனிப்பட்ட கோப்புகளுக்கான login உடன் வரும். ஆவணங்களைப் பரிமாறிக்கொள்ளும் ஒரு இடத்தை உருவாக்கினால், வாடிக்கையாளர் போர்ட்டலை எப்படி உருவாக்குவது பாருங்கள், வெளியிடுவதற்கு முன் பாதுகாப்புப் பட்டியலை ஓட்டுங்கள்.
கேள்விகள்
பதிவேற்றிய கோப்புகள் எங்கே சேமிக்கப்பட வேண்டும்?
Object storage-இல் (கோப்புகளுக்கென உருவாக்கப்பட்ட சேவை, பெரும்பாலும் bucket என்று அழைக்கப்படும்), ஆப் server-இன் வட்டிலோ டேட்டாபேஸிலோ அல்ல. டேட்டாபேஸில் கோப்பின் key அல்லது URL, அத்துடன் பெயர், அளவு, உரிமையாளர் போன்ற விவரங்கள் மட்டும் சேமியுங்கள்.
நான் publish அல்லது redeploy செய்த பிறகு பதிவேற்றிய கோப்புகள் ஏன் மறைகின்றன?
பெரும்பாலான hosting தளங்கள் நிலையான உள்ளூர் வட்டை வைத்திருப்பதில்லை: ஆப் மறுதொடக்கம் அல்லது redeploy ஆகும்போது, அதன் வட்டில் எழுதப்பட்ட கோப்புகள் இழக்கப்படும். பதிவேற்றங்களை அதற்குப் பதிலாக object storage-இல் சேமியுங்கள்.
பதிவேற்றிய கோப்புகளை தனிப்பட்டதாக எப்படி வைத்திருப்பது?
கோப்புகளை பொதுவாகப் படிக்கக்கூடியதாக ஆக்காதீர்கள். உள்நுழைந்த பயனர் ஒரு கோப்பைப் பார்க்க அனுமதிக்கப்பட்டவரா என்று உங்கள் server சரிபார்க்கட்டும், பின்னர் அதை அனுப்பட்டும் அல்லது குறுகிய காலத்துக்கு மட்டும் செல்லுபடியாகும் signed link-ஐத் திருப்பித் தரட்டும்.
Mythex கோப்பு பதிவேற்றங்களை ஆதரிக்கிறதா?
ஆம். ஆப்புக்கு பதிவேற்றங்கள் தேவைப்படும்போது, Mythex ஒரு project-க்கு கோப்பு சேமிப்பை இயக்க முடியும், Free மற்றும் Pro-வில், Free-இல் 1 GB வரம்புடன். Agent-இடம் upload அம்சத்தைக் கேளுங்கள் அல்லது /storage என தட்டச்சு செய்யுங்கள்.