این راهنما نحوه ایجاد و مدیریت فایلها در 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 شما شود. برای اطلاعات بیشتر، محدودیتهای استفاده را ببینید.
موضوعات مرتبط
در اینجا چند مرحله بعدی وجود دارد که ممکن است امتحان کنید:
برای آپلود دادههای فایل هنگام ایجاد یا بهروزرسانی فایل، به آپلود دادههای فایل مراجعه کنید.
برای ایجاد یک فایل در یک پوشه خاص، به ایجاد فایل در یک پوشه خاص مراجعه کنید.
برای انتقال فایلها، به انتقال فایلها بین پوشهها مراجعه کنید.
برای کار با فراداده فایل، به مدیریت فراداده فایل مراجعه کنید.
برای حذف یک فایل، به حذفشدهها یا حذف فایلها و پوشهها مراجعه کنید.