این راهنما نحوه ایجاد و مدیریت فایلها در Google Drive را با استفاده از Google Drive API توضیح میدهد.
فایل ایجاد کنید
برای ایجاد فایلی در Drive که حاوی فراداده یا محتوا نباشد، از روش create
در منبع files
بدون پارامتر استفاده کنید.
هنگامی که فایل را ایجاد می کنید، روش یک منبع files
را برمی گرداند. به فایل یک kind
drive.file
، یک id
، name
"Untitled" و یک mimeType
of application/octet-stream
داده می شود. uploadType
بهعنوان مورد نیاز علامتگذاری شده است، اما به صورت پیشفرض روی media
است، بنابراین در واقع نیازی به ارائه آن ندارید.
برای اطلاعات بیشتر درباره محدودیتهای فایل Drive، محدودیتهای فایل و پوشه را ببینید.
از پارامتر فیلدها استفاده کنید
اگر میخواهید فیلدهایی را برای بازگشت در پاسخ مشخص کنید، میتوانید پارامتر سیستم fields
را با هر روشی از منبع files
تنظیم کنید. اگر پارامتر fields
را حذف کنید، سرور یک مجموعه پیشفرض از فیلدهای مخصوص روش را برمیگرداند. برای مثال، روش list
فقط فیلدهای kind
، id
، name
، mimeType
و resourceKey
را برای هر فایل برمیگرداند. برای برگرداندن فیلدهای مختلف، به بازگشت فیلدهای خاص مراجعه کنید.
شناسه هایی را برای استفاده با فایل های خود ایجاد کنید
روش generateIds
در منبع files
به شما امکان میدهد شناسههای فایل منحصربهفردی را از قبل ایجاد کنید که میتوان از آنها هنگام ایجاد یا کپی فایلها و پوشهها در Drive استفاده کرد. این می تواند زمانی مفید باشد که بخواهید شناسه فایل ها را از برنامه خود کنترل کنید، نه اینکه به Drive اجازه دهید آنها را به طور خودکار اختصاص دهد.
می توانید تعداد شناسه های تولید شده را با استفاده از پارامتر count
query تنظیم کنید. اگر count
تنظیم نشده باشد، 10 به طور پیش فرض برگردانده می شود. حداکثر تعداد شناسه هایی که می توانید درخواست کنید 1000 است.
همچنین میتوانید space
را که میتوان از شناسهها در آن استفاده کرد و type
مواردی را که از شناسهها میتوان استفاده کرد، تعیین کرد.
پس از ایجاد شناسه، می توان آن را از طریق فیلد id
به روش create
یا copy
ارسال کرد. این تضمین می کند که فایل ایجاد شده یا کپی شده از شناسه از پیش تعیین شده استفاده می کند.
اگر فایل با موفقیت ایجاد یا کپی شد، تلاشهای مجدد بعدی پاسخ کد وضعیت HTTP 409 Conflict
را برمیگرداند و فایلهای تکراری ایجاد نمیشوند.
توجه داشته باشید که شناسههای از پیش تولید شده برای ایجاد فایلهای Google Workspace پشتیبانی نمیشوند، به جز انواع application/vnd.google-apps.drive-sdk
و application/vnd.google-apps.folder
MIME . به طور مشابه، آپلودهایی که تبدیل به فرمت فایل Google Workspace را ارجاع می دهند، پشتیبانی نمی شوند.
فایل های فقط متادیتا ایجاد کنید
فایلهای فقط متادیتا حاوی محتوایی نیستند. فراداده دادهای است (مانند name
، mimeType
، و createdTime
) که فایل را توصیف میکند. فیلدهایی مانند name
برای کاربر ناشناس هستند و برای هر کاربر یکسان ظاهر می شوند، در حالی که فیلدهایی مانند viewedByMeTime
حاوی مقادیر خاص کاربر هستند.
یکی از نمونههای یک فایل فقط فراداده، پوشهای با نوع MIME application/vnd.google-apps.folder
است. برای اطلاعات بیشتر، به ایجاد و پر کردن پوشهها مراجعه کنید. مثال دیگر میانبری است که با نوع MIME application/vnd.google-apps.shortcut
به فایل دیگری در Drive اشاره می کند. برای اطلاعات بیشتر، به ایجاد میانبر برای فایل Drive مراجعه کنید.
مدیریت تصاویر کوچک
ریز عکسها به کاربران کمک می کند فایل های Drive را شناسایی کنند. Drive میتواند بهطور خودکار برای انواع فایلهای رایج تصاویر کوچک تولید کند یا میتوانید یک تصویر کوچک ایجاد شده توسط برنامه خود ارائه دهید. برای اطلاعات بیشتر، آپلود ریز عکسها را ببینید.
یک فایل موجود را کپی کنید
برای کپی کردن یک فایل و اعمال هرگونه به روز رسانی درخواستی، از روش copy
در منبع files
استفاده کنید. برای پیدا کردن fileId
برای کپی کردن، از روش list
استفاده کنید.
میتوانید بهروزرسانیها را از طریق معانی پچ اعمال کنید، به این معنی که میتوانید تغییرات جزئی در یک منبع ایجاد کنید. شما باید به صراحت فیلدهایی را که می خواهید تغییر دهید در درخواست خود تنظیم کنید. هر فیلدی که در درخواست گنجانده نشده است مقادیر موجود خود را حفظ می کند. برای اطلاعات بیشتر، کار با منابع جزئی را ببینید.
با استفاده از روش generateIds
می توانید شناسه فایل فایل کپی شده را از قبل تنظیم کنید. برای اطلاعات بیشتر، به ایجاد شناسهها برای استفاده با فایلهای خود مراجعه کنید.
توجه داشته باشید که برای تأیید تماس باید از یک محدوده Drive API مناسب استفاده کنید. برای اطلاعات بیشتر درباره حوزههای Drive، به انتخاب حوزههای API Google Drive مراجعه کنید.
محدودیت ها و ملاحظات
همانطور که برای کپی کردن فایل ها آماده می شوید، به این محدودیت ها و ملاحظات توجه کنید:
مجوزها :
- شی
DownloadRestrictionsMetadata
منبعfiles
تعیین می کند که چه کسی می تواند فایل را کپی کند. برای اطلاعات بیشتر، به جلوگیری از دانلود، چاپ یا کپی کردن فایل توسط کاربران مراجعه کنید. - منبع فیلد
capabilities.canCopy
تعیین می کند که آیا کاربر می تواند یک فایل را کپی کند یا خیر. برای اطلاعات بیشتر، به درک قابلیتهای فایل مراجعه کنید. - کاربری که کپی را ایجاد کرده مالک فایل کپی شده است. هیچ تنظیمات اشتراک گذاری دیگری از فایل منبع تکرار نمی شود. اگر کپی در یک پوشه مشترک ایجاد شود، مجوزهای آن پوشه را به ارث می برد.
- ممکن است مالکیت فایل کپی شده تغییر کند و کپی تنظیمات اشتراک فایل اصلی را به ارث نبرد. این تنظیمات ممکن است نیاز به بازنشانی داشته باشند.
- شی
مدیریت فایل :
- برخی از فایلها، مانند میانبرهای شخص ثالث ، هرگز نمیتوانند کپی شوند.
- شما فقط می توانید یک فایل را در یک پوشه والد کپی کنید. تعیین چند والدین پشتیبانی نمی شود. اگر فیلد
parents
مشخص نشده باشد، فایل هر پدر و مادر قابل کشف را از فایل منبع به ارث می برد. - حتی اگر یک پوشه یک نوع فایل است، شما نمی توانید یک پوشه را کپی کنید. در عوض، یک پوشه مقصد ایجاد کنید و فیلد
parents
فایل های موجود را روی پوشه مقصد تنظیم کنید. سپس می توانید پوشه منبع اصلی را حذف کنید. - مگر اینکه نام فایل جدیدی مشخص شود، روش
copy
فایلی با همان نام اصلی تولید می کند. - استفاده بیش از حد از
copy
می تواند منجر به فراتر رفتن از محدودیت های سهمیه Drive API شما شود. برای اطلاعات بیشتر، محدودیتهای استفاده را ببینید.
موضوعات مرتبط
در اینجا چند مرحله بعدی وجود دارد که ممکن است امتحان کنید:
برای آپلود دادههای فایل هنگام ایجاد یا بهروزرسانی فایل، به آپلود دادههای فایل مراجعه کنید.
برای ایجاد یک فایل در یک پوشه خاص، به ایجاد فایل در یک پوشه خاص مراجعه کنید.
برای انتقال فایلها، به انتقال فایلها بین پوشهها مراجعه کنید.
برای کار با فراداده فایل، به مدیریت فراداده فایل مراجعه کنید.
برای حذف یک فایل، به حذفشدهها یا حذف فایلها و پوشهها مراجعه کنید.