คู่มือนี้อธิบายวิธีสร้างและจัดการไฟล์ใน Google ไดรฟ์โดยใช้ Google Drive API
สร้างไฟล์
หากต้องการสร้างไฟล์ในไดรฟ์ที่ไม่มีข้อมูลเมตาหรือเนื้อหา ให้ใช้วิธี create ในแหล่งข้อมูล files โดยไม่มีพารามิเตอร์
เมื่อสร้างไฟล์ เมธอดจะแสดงผลทรัพยากร files ระบบจะกำหนดkindเป็น drive.file, id, name เป็น "ไม่มีชื่อ" และmimeType เป็น application/octet-stream ระบบจะทําเครื่องหมาย
uploadType
เป็นต้องระบุ แต่ค่าเริ่มต้นคือ media คุณจึงไม่ต้อง
ระบุค่าดังกล่าว
ดูข้อมูลเพิ่มเติมเกี่ยวกับขีดจำกัดของไฟล์ในไดรฟ์ได้ที่ขีดจำกัดของไฟล์และโฟลเดอร์
ใช้พารามิเตอร์ฟิลด์
หากต้องการระบุช่องที่จะแสดงผลในการตอบกลับ คุณสามารถตั้งค่า
fields พารามิเตอร์ระบบ
ด้วยเมธอดใดก็ได้ของทรัพยากร files หากคุณละเว้นพารามิเตอร์ fields เซิร์ฟเวอร์จะแสดงผลชุดฟิลด์เริ่มต้นที่เฉพาะเจาะจงสำหรับเมธอด เช่น เมธอด
list จะแสดงเฉพาะช่อง kind, id,
name, mimeType และ resourceKey สำหรับแต่ละไฟล์ หากต้องการแสดงช่องอื่น ให้ดูแสดงช่องที่เฉพาะเจาะจง
การเป็นเจ้าของไฟล์
เมื่อสร้างไฟล์โดยใช้ Drive API ความเป็นเจ้าของจะขึ้นอยู่กับ ข้อมูลเข้าสู่ระบบการตรวจสอบสิทธิ์ที่แอปใช้ในลักษณะต่อไปนี้
บัญชีผู้ใช้ (OAuth 2.0): หากแอปพลิเคชันตรวจสอบสิทธิ์ในนามของผู้ใช้ ผู้ใช้รายนั้นจะเป็นเจ้าของไฟล์ จากนั้นไฟล์จะอยู่ในโฟลเดอร์ไดรฟ์ของฉันหรือโฟลเดอร์ที่ระบุ ซึ่งจะใช้โควต้าพื้นที่เก็บข้อมูลของบัญชี
บัญชีบริการ: หากแอปพลิเคชันตรวจสอบสิทธิ์โดยใช้บัญชีบริการ บัญชีบริการจะเป็นเจ้าของไฟล์ จากนั้นไฟล์จะอยู่ในพื้นที่เก็บข้อมูลไดรฟ์เฉพาะของ บัญชีบริการ ไฟล์จะไม่ปรากฏ ในบัญชีพื้นที่เก็บข้อมูลไดรฟ์อื่นๆ เว้นแต่จะมีการแชร์อย่างชัดแจ้ง หากลบบัญชีบริการ ระบบจะลบไฟล์ทั้งหมดที่เป็นของบัญชีนั้นทันที
หากคุณใช้บัญชีบริการแต่ต้องการให้บัญชีผู้ใช้ที่เฉพาะเจาะจงเป็นเจ้าของไฟล์ ให้ใช้การมอบสิทธิ์ทั้งโดเมน ซึ่งจะช่วยให้บัญชีบริการทำหน้าที่แทนผู้ใช้และสร้างไฟล์ในนามของผู้ใช้ได้ โปรดดูข้อมูลเพิ่มเติมที่หัวข้อมอบสิทธิ์ทั่วทั้งโดเมนให้แก่บัญชีบริการ
ดูข้อมูลเพิ่มเติมเกี่ยวกับสิทธิ์ของไฟล์ได้ที่แชร์ไฟล์ โฟลเดอร์ และไดรฟ์
สร้างรหัสเพื่อใช้กับไฟล์
เมธอด generateIds ในแหล่งข้อมูล files ช่วยให้คุณสร้างรหัสไฟล์ที่ไม่ซ้ำล่วงหน้าได้ ซึ่งสามารถใช้เมื่อสร้างหรือคัดลอกไฟล์และโฟลเดอร์ในไดรฟ์ ซึ่งอาจเป็นประโยชน์เมื่อคุณต้องการควบคุมรหัสไฟล์
จากแอป แทนที่จะให้ไดรฟ์กำหนดรหัสโดยอัตโนมัติ
คุณตั้งค่าจำนวนรหัสที่สร้างขึ้นได้โดยใช้พารามิเตอร์การค้นหา
count
หากไม่ได้ตั้งค่า count ระบบจะแสดง 10 รายการโดยค่าเริ่มต้น จำนวนรหัสสูงสุดที่คุณขอได้คือ 1,000 รายการ
นอกจากนี้ คุณยังระบุ
space ที่ใช้รหัสได้และ
type ของสินค้าที่ใช้รหัสได้ด้วย
เมื่อสร้างรหัสแล้ว คุณจะส่งรหัสไปยังเมธอด create หรือ copy ได้
ผ่านช่อง id เพื่อให้มั่นใจว่าไฟล์ที่สร้างหรือคัดลอกจะใช้รหัสที่กำหนดไว้ล่วงหน้า
หากสร้างหรือคัดลอกไฟล์สำเร็จ การลองอีกครั้งในภายหลังจะแสดง409
Conflictการตอบกลับรหัสสถานะ HTTP และระบบจะไม่สร้างไฟล์ที่ซ้ำกัน
โปรดทราบว่าระบบไม่รองรับรหัสที่สร้างไว้ล่วงหน้าสำหรับการสร้างไฟล์ 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 ดูข้อมูลเพิ่มเติมได้ที่หัวข้อสร้าง
ทางลัดไปยังไฟล์ในไดรฟ์
จัดการรูปภาพปก
ภาพขนาดย่อช่วยให้ผู้ใช้ระบุไฟล์ในไดรฟ์ได้ ไดรฟ์ สามารถสร้างภาพปกสำหรับไฟล์ประเภททั่วไปได้โดยอัตโนมัติ หรือคุณจะระบุ รูปภาพภาพปกที่แอปสร้างขึ้นก็ได้ ดูข้อมูลเพิ่มเติมได้ที่อัปโหลด ภาพปก
คัดลอกไฟล์ที่มีอยู่
หากต้องการคัดลอกไฟล์และใช้อัปเดตที่ขอ ให้ใช้เมธอด copy ในแหล่งข้อมูล files หากต้องการค้นหา
fileIdที่จะคัดลอก ให้ใช้วิธี list
คุณใช้การอัปเดตผ่านความหมายของแพตช์ได้ ซึ่งหมายความว่าคุณสามารถแก้ไขทรัพยากรบางส่วนได้ คุณต้องตั้งค่าฟิลด์ที่ต้องการ แก้ไขในคำขออย่างชัดเจน ฟิลด์ที่ไม่ได้รวมไว้ในคำขอจะยังคงมีค่าเดิม ดูข้อมูลเพิ่มเติมได้ที่การทำงานกับทรัพยากรบางส่วน
คุณตั้งค่ารหัสไฟล์ของไฟล์ที่คัดลอกไว้ล่วงหน้าได้โดยใช้วิธี generateIds ดูข้อมูลเพิ่มเติมได้ที่
สร้างรหัสเพื่อใช้กับไฟล์
โปรดทราบว่าคุณต้องใช้ขอบเขต Drive API ที่เหมาะสมเพื่อให้สิทธิ์การเรียก ดูข้อมูลเพิ่มเติมเกี่ยวกับขอบเขตของไดรฟ์ได้ที่เลือก ขอบเขต Google Drive API
ข้อจำกัดและข้อควรพิจารณา
ขณะเตรียมคัดลอกไฟล์ โปรดทราบข้อจำกัดและข้อควรพิจารณาต่อไปนี้
สิทธิ์
- ออบเจ็กต์
DownloadRestrictionsMetadataของทรัพยากรfilesจะกำหนด ว่าใครคัดลอกไฟล์ได้ ดูข้อมูลเพิ่มเติมได้ที่หัวข้อป้องกันไม่ให้ผู้ใช้ ดาวน์โหลด พิมพ์ หรือคัดลอก ไฟล์ - ฟิลด์ทรัพยากร
capabilities.canCopyจะกำหนดว่าผู้ใช้จะคัดลอกไฟล์ได้หรือไม่ ดูข้อมูลเพิ่มเติมได้ที่ทำความเข้าใจความสามารถของไฟล์ - ผู้ใช้ที่สร้างสำเนาจะเป็นเจ้าของไฟล์ที่คัดลอก ระบบจะไม่ทำซ้ำการตั้งค่าการแชร์อื่นๆ จากไฟล์ต้นฉบับ หากสร้างสำเนาใน โฟลเดอร์ที่แชร์ สำเนาจะรับค่าสิทธิ์ของโฟลเดอร์นั้น
- การเป็นเจ้าของไฟล์ที่คัดลอกอาจเปลี่ยนแปลง และสำเนาอาจไม่รับช่วง การตั้งค่าการแชร์ของไฟล์ต้นฉบับ คุณอาจต้อง รีเซ็ตการตั้งค่าเหล่านี้
- ออบเจ็กต์
การจัดการไฟล์
- ระบบจะคัดลอกไฟล์บางไฟล์ไม่ได้ เช่น ทางลัดของบุคคลที่สาม
- คุณจะคัดลอกไฟล์ไปยังโฟลเดอร์หลักได้เพียงโฟลเดอร์เดียว ระบบไม่รองรับการระบุ
ผู้ปกครองหลายคน หากไม่ได้ระบุฟิลด์
parentsไฟล์จะรับค่าโฟลเดอร์หลักที่ค้นพบได้จากไฟล์ต้นฉบับ - แม้ว่าโฟลเดอร์จะเป็นไฟล์ประเภทหนึ่ง แต่คุณก็ไม่สามารถคัดลอกโฟลเดอร์ได้
แต่ให้สร้างโฟลเดอร์ปลายทางและตั้งค่าฟิลด์
parentsของไฟล์ที่มีอยู่เป็นโฟลเดอร์ปลายทาง จากนั้นคุณจะลบ โฟลเดอร์แหล่งที่มาต้นฉบับได้ - หากไม่ได้ระบุชื่อไฟล์ใหม่
copyจะสร้างไฟล์ที่มีชื่อเดียวกับไฟล์ต้นฉบับ - การใช้
copyมากเกินไปอาจทำให้คุณใช้โควต้า Drive API เกินขีดจำกัด ดูข้อมูลเพิ่มเติมได้ที่โควต้าการใช้งาน
หัวข้อที่เกี่ยวข้อง
ขั้นตอนถัดไปที่คุณอาจลองทำมีดังนี้
หากต้องการอัปโหลดข้อมูลไฟล์เมื่อสร้างหรืออัปเดตไฟล์ ให้ดูอัปโหลดข้อมูลไฟล์
หากต้องการสร้างไฟล์ในโฟลเดอร์ที่เฉพาะเจาะจง โปรดดูสร้างไฟล์ในโฟลเดอร์ที่เฉพาะเจาะจง
หากต้องการย้ายไฟล์ โปรดดูย้ายไฟล์ระหว่าง โฟลเดอร์
หากต้องการทำงานกับข้อมูลเมตาของไฟล์ โปรดดูจัดการข้อมูลเมตาของไฟล์
หากต้องการลบไฟล์ โปรดดูทิ้งหรือลบไฟล์และโฟลเดอร์