المقدمة
قم بتحميل وإدارة الملفات في التخزين السحابي مع تحسين تلقائي.
🎯 ماذا يفعل هذا الموديل؟
يتيح لك موديل FileUploading تحميل واسترجاع وحذف الملفات في تخزين OneEntry السحابي - الصور، PDF، الفيديوهات، المستندات، وأي نوع من الملفات مع تحسين تلقائي وتوصيل عبر CDN.
فكر في الأمر كمدير تخزين سحابي خاص بك - تقوم بتحميل الملفات مرة واحدة، وOneEntry يخزنها، ويحسن الصور تلقائيًا، ويقدمها بسرعة عبر CDN.
📖 شرح بسيط
تخيل أنك تبني تطبيقًا حيث يمكن للمستخدمين:
- 📸 تحميل صور الملف الشخصي - إعادة الحجم وتحسين تلقائي
- 📄 تحميل المستندات - تخزين PDF وDOC بأمان
- 🖼️ تحميل صور المنتجات - صور متعددة لكل منتج
- 🎥 تحميل الفيديوهات - تخزين وبث محتوى الفيديو
- 📎 تحميل المرفقات - أي نوع من الملفات
بدلاً من إدارة التخزين الخاص بك:
- ✅ قم بتحميل الملفات إلى سحابة OneEntry
- ✅ تحسين تلقائي للصور (إعادة الحجم، ضغط)
- ✅ توصيل سريع عبر CDN في جميع أنحاء العالم
- ✅ تنظيم حسب نوع الكيان (منتج، مستخدم، صفحة)
- ✅ الحصول على روابط تحميل على الفور
- ✅ حذف الملفات عند عدم الحاجة إليها
مثال من العالم الحقيقي:
بدون FileUploading (يدوي):
- إعداد دلو AWS S3 ❌
- تكوين CDN ❌
- كتابة كود تحسين الصور ❌
- إدارة أذونات الملفات ❌
- توليد روابط موقعة ❌
مع FileUploading (تلقائي):
- تحميل الملف → الحصول على رابط التحميل ✅
- الصور محسنة تلقائيًا ✅
- توصيل CDN مدمج ✅
- إدارة ملفات سهلة ✅
✨ ا لمفاهيم الأساسية
ما هو تحميل الملفات؟
تحميل الملفات هو تخزين الملفات في التخزين السحابي:
- تحميل - إرسال الملف إلى سحابة OneEntry
- التخزين - الملفات مخزنة بأمان في السحابة
- CDN - توصيل سريع من الخوادم القريبة من المستخدمين
- التحسين - الصور مضغوطة ومعدلة تلقائيًا
- الرابط - الحصول على رابط تحميل دائم
أنواع الملفات المدعومة
قم بتحميل أي نوع من الملفات:
| الفئة | أنواع الملفات | التحسين التلقائي |
|---|---|---|
| الصور | JPG، PNG، GIF، WebP، SVG | نعم (إعادة الحجم، ضغط) |
| المستندات | PDF، DOC، DOCX، XLS، XLSX | لا (تخزين كما هي) |
| الفيديوهات | MP4، MOV، AVI، WebM | لا (تخزين كما هي) |
| الأرشيفات | ZIP، RAR، TAR، GZ | لا (تخزين كما هي) |
| أخرى | أي نوع من الملفات | لا (تخزين كما هي) |
تحسين الصور
عند تحميل الصور، يمكن لـ OneEntry:
- 📐 إعادة الحجم - تقليل الأبعاد (على سبيل المثال، الحد الأقصى 1920 بكسل عرض)
- 🗜️ ضغط - تقليل حجم الملف (أصغر، أسرع)
- 🖼️ تنسيق - تحويل إلى تنسيق مثالي (WebP)
- 📱 استجابة - إنشاء أحجام متعددة
مثال:
الأصلي: 5MB، 4000x3000 بكسل
↓ (تحسين تلقائي)
المحسن: 200KB، 1920x1440 بكسل
📋 ما تحتاج إلى معرفته
معلمات التحميل
عند تحميل الملفات، يمكنك تحديد:
await FileUploading.upload(file, {
entity: 'product', // نوع الكيان (مطلوب)
id: 123, // معرف الكيان (اختياري)
type: 'image', // تلميح نوع الملف (اختياري)
width: 1920, // الحد الأقصى للعرض للصور (اختياري)
height: 1080, // الحد الأقصى للارتفاع للصور (اختياري)
compress: true // ضغط الصور (اختياري)
});
شرح المعلمات:
file- كائن الملف (من الإدخال أو السحب والإفلات)entity- الفئة:product،page،block،user،form،generalid- معرف الكيان لربط الملف به (على سبيل المثال، معرف المنتج)type- تلميح نوع الملف (عادة ما يتم اكتشافه تلقائيًا)width- الحد الأقصى للعرض بالبكسل (للصور فقط)height- الحد الأقصى للارتفاع بالبكسل (للصور فقط)compress- تمكين الضغط (للصور فقط)
استجابة التحميل
بعد التحميل، ستحصل على:
{
filename: "abc123-photo.jpg", // اسم الملف الفريد
downloadLink: "https://cdn.../photo.jpg", // رابط CDN
size: 204800, // حجم الملف (بايت)
}
الحقول المهمة:
downloadLink- استخدم هذا الرابط في علامات<img>،<a>،<video>filename- احفظ هذا لحذف الملف لاحقًاsize- حجم الملف بالبايت (204800 بايت = 200KB)
أفضل الممارسات لتنظيم الملفات
نظم الملفات حسب نوع الكيان