เพื่อจัดการไฟล์และโฟลเดอร์ รวมถึงพร็อพเพอร์ตี้และการแก้ไขที่กำหนดเอง
บริการไดรฟ์ขั้นสูงช่วยให้คุณใช้ Google ไดรฟ์ API ใน Google Apps Script ได้ API นี้ช่วยให้สคริปต์สร้าง ค้นหา และ แก้ไขไฟล์และโฟลเดอร์ใน Google ไดรฟ์ได้ เช่นเดียวกับบริการไดรฟ์ในตัว ของ Apps Script ในกรณีส่วนใหญ่ บริการในตัวจะใช้งานง่ายกว่า แต่บริการขั้นสูงนี้มีฟีเจอร์เพิ่มเติมบางอย่าง เช่น การเข้าถึงพร็อพเพอร์ตี้ไฟล์ที่กำหนดเอง รวมถึงการแก้ไขไฟล์และโฟลเดอร์
นี่เป็นบริการขั้นสูงที่ต้องเปิดใช้ก่อน ใช้งาน
ข้อมูลอ้างอิง
ดูข้อมูลโดยละเอียดเกี่ยวกับบริการนี้ได้ในเอกสารอ้างอิงสำหรับ Drive API เช่นเดียวกับบริการขั้นสูงทั้งหมดใน Apps Script บริการขั้นสูงของไดรฟ์จะใช้ออบเจ็กต์ เมธอด และพารามิเตอร์เดียวกันกับ API สาธารณะ ดูข้อมูลเพิ่มเติมได้ที่วิธีกำหนดลายเซ็นของเมธอด
นอกจากนี้ เมธอดที่ชื่อ delete ใน Drive API จะชื่อ remove ใน
บริการขั้นสูง (เช่น Drive.Permissions.remove()) เนื่องจาก delete เป็น
คำที่สงวนไว้ใน JavaScript
หากต้องการรายงานปัญหาและรับการสนับสนุนอื่นๆ โปรดดูคู่มือการสนับสนุน Drive API
โค้ดตัวอย่าง
ตัวอย่างโค้ดในส่วนนี้ใช้ API เวอร์ชัน 3
อัปโหลดไฟล์
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีบันทึกไฟล์ลงในไดรฟ์ของผู้ใช้
สร้างโฟลเดอร์
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างโฟลเดอร์ในไดรฟ์
/**
* 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);
}
ค้นหาไฟล์
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีค้นหาไฟล์โดยใช้สตริงการค้นหา
/**
* 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.');
}
}
แสดงรายการโฟลเดอร์
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแสดงรายการโฟลเดอร์ระดับบนสุดในไดรฟ์ของผู้ใช้ โปรดทราบว่ามีการใช้โทเค็นหน้าเว็บเพื่อเข้าถึงรายการผลลัพธ์ทั้งหมด
แสดงรายการการแก้ไข
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแสดงรายการการแก้ไขสำหรับไฟล์ที่ระบุ โปรดทราบ ว่าไฟล์บางไฟล์อาจมีการแก้ไขหลายครั้ง และคุณควรใช้โทเค็นหน้าเว็บเพื่อ เข้าถึงรายการผลลัพธ์ทั้งหมด
เพิ่มคุณสมบัติไฟล์
ตัวอย่างโค้ดต่อไปนี้ใช้ฟิลด์ appProperties เพื่อเพิ่มพร็อพเพอร์ตี้ที่กำหนดเอง
ลงในไฟล์ สคริปต์เท่านั้นที่จะมองเห็นพร็อพเพอร์ตี้ที่กำหนดเอง หากต้องการเพิ่มพร็อพเพอร์ตี้ที่กำหนดเองลงในไฟล์ซึ่งแอปอื่นๆ ก็มองเห็นได้ ให้ใช้ฟิลด์ 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
});
}