برای مدیریت فایلها و پوشهها، از جمله ویژگیهای سفارشی و ویرایشها.
سرویس پیشرفته درایو به شما امکان میدهد از API گوگل درایو در Google Apps Script استفاده کنید. این API، بسیار شبیه به سرویس درایو داخلی Apps Script، به اسکریپتها اجازه میدهد تا فایلها و پوشهها را در گوگل درایو ایجاد، پیدا و تغییر دهند. در بیشتر موارد، استفاده از سرویس داخلی آسانتر است، اما این سرویس پیشرفته چند ویژگی اضافی از جمله دسترسی به ویژگیهای فایل سفارشی و همچنین ویرایش فایلها و پوشهها را ارائه میدهد.
این یک سرویس پیشرفته است که قبل از استفاده باید فعال شود.
مرجع
برای اطلاعات دقیق در مورد این سرویس، به مستندات مرجع Drive API مراجعه کنید. مانند تمام سرویسهای پیشرفته در Apps Script، سرویس پیشرفته Drive از همان اشیاء، متدها و پارامترهای API عمومی استفاده میکند. برای اطلاعات بیشتر، به بخش «نحوه تعیین امضاهای متد» مراجعه کنید. همچنین، متدهایی که در Drive API با نام delete نامگذاری شدهاند، در سرویس پیشرفته با نام remove نامگذاری شدهاند (مانند Drive.Permissions.remove() )، زیرا delete یک کلمه رزرو شده در جاوا اسکریپت است.
برای گزارش مشکلات و یافتن پشتیبانیهای دیگر، به راهنمای پشتیبانی Drive API مراجعه کنید.
کد نمونه
نمونههای کد در این بخش از نسخه ۳ این API استفاده میکنند.
آپلود فایلها
نمونه کد زیر نحوه ذخیره یک فایل در درایو کاربر را نشان میدهد.
ایجاد پوشه
نمونه کد زیر نحوه ایجاد پوشه در Drive را نشان میدهد.
/**
* Creates a new folder.
*/
function createFolder() {
var folderMetadata = {
'name': 'New Folder',
'mimeType': 'application/vnd.google-apps.folder'
};
var folder = Drive.Files.create(folderMetadata);
Logger.log('Folder ID: ' + folder.id);
}
جستجو برای فایلها
نمونه کد زیر نحوه جستجوی فایلها با استفاده از رشته پرسوجو (query string) را نشان میدهد.
/**
* Searches for files with a specific name.
*/
function searchFiles() {
var query = 'name contains "Project Plan" and trashed = false';
var files = Drive.Files.list({
'q': query,
'fields': 'files(id, name, mimeType)'
});
if (files.files && files.files.length > 0) {
for (var i = 0; i < files.files.length; i++) {
var file = files.files[i];
Logger.log('%s (ID: %s)', file.name, file.id);
}
} else {
Logger.log('No files found.');
}
}
List folders
نمونه کد زیر نحوه فهرست کردن پوشههای سطح بالا در درایو کاربر را نشان میدهد. به استفاده از توکنهای صفحه برای دسترسی به لیست کامل نتایج توجه کنید.
فهرست اصلاحات
نمونه کد زیر نحوه فهرست کردن اصلاحات یک فایل مشخص را نشان میدهد. توجه داشته باشید که برخی فایلها میتوانند چندین اصلاحیه داشته باشند و برای دسترسی به لیست کامل نتایج باید از توکنهای صفحه استفاده کنید.
اضافه کردن ویژگیهای فایل
نمونه کد زیر از فیلد appProperties برای اضافه کردن یک ویژگی سفارشی به یک فایل استفاده میکند. این ویژگی سفارشی فقط برای اسکریپت قابل مشاهده است. برای اضافه کردن یک ویژگی سفارشی به فایل که برای سایر برنامهها نیز قابل مشاهده است، از فیلد properties استفاده کنید. برای اطلاعات بیشتر، به بخش Add custom file properties مراجعه کنید.
اضافه کردن کاربر به فایل
نمونه کد زیر نحوه اضافه کردن یک کاربر به عنوان ویرایشگر به یک فایل و جلوگیری از ارسال اعلان ایمیل را نشان میدهد.
/**
* Adds a user to a file as an editor without sending an email notification.
*/
function addEditor() {
var fileId = '1234567890abcdefghijklmnopqrstuvwxyz';
var userEmail = 'bob@example.com';
var request = {
'role': 'writer',
'type': 'user',
'emailAddress': userEmail
};
Drive.Permissions.create(request, fileId, {
'sendNotificationEmail': false
});
}