پوشهها فایلهایی هستند که فقط حاوی فراداده (metadata) هستند و میتوانند برای سازماندهی فایلها در گوگل درایو استفاده شوند. آنها دارای ویژگیهای زیر هستند:
- یک پوشه، فایلی با نوع MIME
application/vnd.google-apps.folderاست و پسوندی ندارد. - از نام مستعار
rootمیتوان برای ارجاع به پوشه ریشه در هر جایی که شناسه فایل ارائه شده باشد، استفاده کرد.
برای اطلاعات بیشتر در مورد محدودیتهای پوشه Drive، به محدودیتهای فایل و پوشه مراجعه کنید.
این راهنما نحوه انجام برخی از کارهای اساسی مربوط به پوشه را توضیح میدهد.
ایجاد پوشه
برای ایجاد یک پوشه، از متد files.create() به همراه mimeType از application/vnd.google-apps.folder و یک name استفاده کنید. نمونه کد زیر نحوه ایجاد یک پوشه با استفاده از یک کتابخانه کلاینت را نشان میدهد:
جاوا
پایتون
نود جی اس
پی اچ پی
دات نت
ایجاد فایل در یک پوشه خاص
برای ایجاد یک فایل در یک پوشه خاص، از متد files.create() استفاده کنید و شناسه پوشه را در ویژگی parents فایل مشخص کنید.
ویژگی parents شناسه پوشه والد حاوی فایل را در خود نگه میدارد. ویژگی parents میتواند هنگام ایجاد فایلها در یک پوشه سطح بالا یا هر پوشه دیگری استفاده شود.
یک فایل فقط میتواند یک پوشه والد داشته باشد. تعیین چندین والد پشتیبانی نمیشود. اگر فیلد parents مشخص نشده باشد، فایل مستقیماً در پوشه My Drive کاربر قرار میگیرد.
نمونه کد زیر نحوه ایجاد یک فایل در یک پوشه خاص با استفاده از یک کتابخانه کلاینت را نشان میدهد:
جاوا
پایتون
نود جی اس
پی اچ پی
دات نت
جابجایی فایلها بین پوشهها
برای انتقال فایلها، باید شناسهی ویژگی parents را بهروزرسانی کنید.
برای اضافه کردن یا حذف والدها برای یک فایل موجود، از متد files.update() به همراه پارامترهای کوئری addParents و removeParents استفاده کنید.
یک فایل فقط میتواند یک پوشه والد داشته باشد. تعیین چندین والد پشتیبانی نمیشود.
نمونه کد زیر نحوه جابجایی یک فایل بین پوشهها با استفاده از یک کتابخانه کلاینت را نشان میدهد:
جاوا
پایتون
نود جی اس
پی اچ پی
دات نت
محدودیتهای فایل و پوشه
فایلها و پوشههای درایو محدودیتهایی برای ذخیرهسازی دارند.
محدودیت کاربر-مورد
هر کاربر میتواند تا ۵۰۰ میلیون آیتم ایجاد شده توسط آن حساب را داشته باشد. وقتی به این محدودیت برسد، کاربر دیگر نمیتواند آیتمهایی را در Drive ایجاد یا آپلود کند. آنها همچنان میتوانند آیتمهای موجود را مشاهده و ویرایش کنند. برای ایجاد مجدد فایلها، کاربران باید آیتمها را به طور دائم حذف کنند یا از حساب دیگری استفاده کنند. برای اطلاعات بیشتر، به حذف شدهها یا حذف فایلها و پوشهها مراجعه کنید.
اشیایی که در این حد شمارش میشوند عبارتند از:
- مواردی که توسط کاربر در Drive ایجاد یا آپلود شدهاند
- مواردی که توسط کاربر ایجاد شدهاند اما اکنون متعلق به شخص دیگری هستند
- اقلام موجود در سطل زباله
- میانبرها
- میانبرهای شخص ثالث
اشیایی که جزو این حد به حساب نمیآیند عبارتند از:
- موارد حذفشده دائمی
- مواردی که با کاربر به اشتراک گذاشته شده اما متعلق به شخص دیگری است
- مواردی که متعلق به کاربر هستند اما توسط شخص دیگری ایجاد شدهاند
تلاش برای افزودن بیش از ۵۰۰ میلیون آیتم، پاسخ کد وضعیت HTTP activeItemCreationLimitExceeded را برمیگرداند.
توجه داشته باشید که حسابهای کاربری سرویس نمیتوانند مالک هیچ فایلی باشند. در عوض، آنها باید فایلها و پوشهها را در درایوهای مشترک آپلود کنند، یا از OAuth 2.0 برای آپلود موارد از طرف یک کاربر انسانی استفاده کنند.
محدودیت تعداد آیتمهای پوشه
هر پوشه در My Drive کاربر محدودیت ۵۰۰۰۰۰ مورد دارد. این محدودیت شامل پوشه اصلی My Drive نمیشود. مواردی که جزو این محدودیت محسوب میشوند عبارتند از:
- پوشهها
- فایلها. همه انواع فایل، صرف نظر از مالکیت فایل.
- میانبرها. به عنوان یک آیتم واحد در یک پوشه محسوب میشود، حتی اگر آیتمی که به آن اشاره میکند در آن پوشه نباشد. برای اطلاعات بیشتر، به ایجاد میانبر برای یک فایل Drive مراجعه کنید.
- میانبرهای شخص ثالث. به عنوان یک آیتم واحد در یک پوشه محسوب میشود، حتی اگر آیتمی که به آن اشاره میکند در آن پوشه نباشد. برای اطلاعات بیشتر، به ایجاد یک فایل میانبر برای محتوای ذخیره شده توسط برنامه خود مراجعه کنید.
برای اطلاعات بیشتر در مورد محدودیتهای پوشه، به محدودیتهای پوشه در Google Drive مراجعه کنید.
محدودیت عمق پوشه
درایو من یک کاربر نمیتواند بیش از ۱۰۰ سطح پوشه تو در تو داشته باشد. این بدان معناست که یک پوشه فرزند نمیتواند در زیر پوشهای با عمق بیش از ۹۹ سطح ذخیره شود. این محدودیت فقط برای پوشههای فرزند اعمال میشود. یک فایل فرزند با نوع MIME غیر از application/vnd.google-apps.folder از این محدودیت مستثنی است.
برای مثال، در نمودار زیر، یک پوشه جدید میتواند درون پوشه شماره ۹۹ قرار گیرد، اما نمیتواند درون پوشه شماره ۱۰۰ قرار گیرد. با این حال، پوشه شماره ۱۰۰ میتواند فایلها را مانند هر پوشه Drive دیگری ذخیره کند:
تلاش برای افزودن بیش از ۱۰۰ سطح پوشه، پاسخ کد وضعیت HTTP با عنوان myDriveHierarchyDepthLimitExceeded را برمیگرداند.