Google ไดรฟ์ API รองรับการดำเนินการดาวน์โหลดและส่งออกหลายประเภทตามที่แสดงในตารางต่อไปนี้
ดาวน์โหลดการดำเนินการ |
|
||||
ส่งออกการดําเนินการ |
|
ก่อนดาวน์โหลดหรือส่งออกเนื้อหาไฟล์ ให้ตรวจสอบว่าผู้ใช้ดาวน์โหลดไฟล์ได้โดยใช้ช่อง capabilities.canDownload
ในแหล่งข้อมูล files
ดูคำอธิบายประเภทไฟล์ที่กล่าวถึงที่นี่ รวมถึงไฟล์ Blob และ Google Workspace ได้ที่ประเภทไฟล์
ส่วนที่เหลือของคู่มือนี้จะแสดงวิธีการโดยละเอียดสำหรับการดําเนินการดาวน์โหลดและการส่งออกประเภทเหล่านี้
ดาวน์โหลดเนื้อหาไฟล์ BLOB
หากต้องการดาวน์โหลดไฟล์ Blob ที่เก็บไว้ในไดรฟ์ ให้ใช้เมธอด files.get
พร้อมรหัสของไฟล์ที่จะดาวน์โหลดและพารามิเตอร์ URL alt=media
พารามิเตอร์ alt=media
URL บอกเซิร์ฟเวอร์ว่ามีการขอการดาวน์โหลดเนื้อหาเป็นรูปแบบการตอบกลับทางเลือก
พารามิเตอร์ alt=media
URL เป็นพารามิเตอร์ของระบบที่ใช้ได้กับ REST API ทั้งหมดของ Google หากใช้ไลบรารีไคลเอ็นต์สำหรับ Drive API คุณไม่จำเป็นต้องตั้งค่าพารามิเตอร์นี้อย่างชัดเจน
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้เมธอด files.get
เพื่อดาวน์โหลดไฟล์ด้วยไลบรารีของไคลเอ็นต์ Drive API
Java
Python
Node.js
PHP
.NET
ตัวอย่างโค้ดนี้ใช้เมธอดของไลบรารีที่เพิ่มพารามิเตอร์ alt=media
URL ลงในคําขอ HTTP พื้นฐาน
การดาวน์โหลดไฟล์ที่เริ่มต้นจากแอปของคุณต้องได้รับอนุญาตด้วยขอบเขตที่อนุญาตให้อ่านเนื้อหาไฟล์ ตัวอย่างเช่น แอปที่ใช้ขอบเขต drive.readonly.metadata
ไม่ได้รับอนุญาตให้ดาวน์โหลดเนื้อหาไฟล์
ตัวอย่างโค้ดนี้ใช้ขอบเขตไฟล์ "ไดรฟ์" แบบจํากัดซึ่งอนุญาตให้ผู้ใช้ดูและจัดการไฟล์ทั้งหมดในไดรฟ์ ดูข้อมูลเพิ่มเติมเกี่ยวกับขอบเขตของไดรฟ์ได้ที่หัวข้อเลือกขอบเขต Google Drive API
ผู้ใช้ที่มีสิทธิ์แก้ไขสามารถจํากัดการดาวน์โหลดโดยผู้ใช้ที่มีสิทธิ์อ่านอย่างเดียวได้ด้วยการกําหนดค่าช่อง copyRequiresWriterPermission
เป็น false
ไฟล์ที่ระบุว่าเป็นการละเมิด (เช่น ซอฟต์แวร์ที่เป็นอันตราย) จะมีเพียงเจ้าของไฟล์เท่านั้นที่ดาวน์โหลดได้
นอกจากนี้ จะต้องมีget
พารามิเตอร์การค้นหา acknowledgeAbuse=true
เพื่อระบุว่าผู้ใช้รับทราบความเสี่ยงในการดาวน์โหลดซอฟต์แวร์ไม่พึงประสงค์หรือไฟล์อื่นๆ ที่อาจไม่เหมาะสม แอปพลิเคชันควรเตือนผู้ใช้แบบอินเทอร์แอกทีฟก่อนใช้พารามิเตอร์การค้นหานี้
การดาวน์โหลดบางส่วน
การดาวน์โหลดบางส่วนเกี่ยวข้องกับการดาวน์โหลดเฉพาะบางส่วนของไฟล์ คุณสามารถระบุส่วนของไฟล์ที่ต้องการดาวน์โหลดได้โดยใช้ byte
range กับส่วนหัว Range
เช่น
Range: bytes=500-999
ดาวน์โหลดเนื้อหาไฟล์ BLOB ในเวอร์ชันก่อนหน้า
หากต้องการดาวน์โหลดเนื้อหาของไฟล์ Blob ในเวอร์ชันเก่า ให้ใช้เมธอด revisions.get
พร้อมรหัสของไฟล์ที่จะดาวน์โหลด รหัสของเวอร์ชันแก้ไข และพารามิเตอร์ URL alt=media
พารามิเตอร์ URL alt=media
บอกให้เซิร์ฟเวอร์ทราบว่ามีการขอดาวน์โหลดเนื้อหาในรูปแบบการตอบกลับทางเลือก เช่นเดียวกับ files.get
เมธอด revisions.get
ยังยอมรับพารามิเตอร์การค้นหา acknowledgeAbuse
ที่ไม่บังคับและส่วนหัว Range
ด้วย ดูข้อมูลเพิ่มเติมเกี่ยวกับการดาวน์โหลดการแก้ไขได้ที่จัดการการแก้ไขไฟล์
โปรโตคอลคำขอจะแสดงที่นี่
GET https://www.googleapis.com/drive/v3/files/{FILE_ID
}/revisions/{REVISION_ID
}?alt=media
ดาวน์โหลดเนื้อหาไฟล์ Blob ในเบราว์เซอร์
หากต้องการดาวน์โหลดเนื้อหาของไฟล์ Blob ที่เก็บไว้ในไดรฟ์ภายในเบราว์เซอร์แทนที่จะดาวน์โหลดผ่าน API ให้ใช้ช่อง webContentLink
ของแหล่งข้อมูล files
หากผู้ใช้มีสิทธิ์ดาวน์โหลดไฟล์ ระบบจะแสดงลิงก์สำหรับดาวน์โหลดไฟล์และเนื้อหาของไฟล์ คุณสามารถเปลี่ยนเส้นทางผู้ใช้ไปยัง URL นี้ หรือเสนอเป็นลิงก์ที่คลิกได้
ดาวน์โหลดเนื้อหาไฟล์ BLOB ระหว่างการดำเนินการที่ใช้เวลานาน
หากต้องการดาวน์โหลดเนื้อหาของไฟล์ Blob ระหว่างการดำเนินการที่ใช้เวลานาน ให้ใช้เมธอด files.download
กับรหัสของไฟล์ที่จะดาวน์โหลด คุณตั้งรหัสของการแก้ไขหรือไม่ก็ได้ วิธีนี้เป็นวิธีเดียวในการดาวน์โหลดไฟล์ Google Vids ดูข้อมูลเพิ่มเติมได้ที่จัดการการดำเนินการที่ทำงานอยู่นาน
ส่งออกเนื้อหาเอกสารใน Google Workspace
หากต้องการส่งออกเนื้อหาไบต์ของเอกสาร Google Workspace ให้ใช้เมธอด files.export
พร้อมรหัสของไฟล์ที่จะส่งออก และประเภท MIME ที่ถูกต้อง เนื้อหาที่ส่งออกต้องมีขนาดไม่เกิน 10 MB
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้เมธอด files.export
เพื่อส่งออกเอกสาร Google Workspace ในรูปแบบ PDF โดยใช้ไลบรารีของไคลเอ็นต์ Drive API
Java
Python
Node.js
PHP
.NET
ตัวอย่างโค้ดนี้ใช้ขอบเขต drive
แบบจํากัดซึ่งอนุญาตให้ผู้ใช้ดูและจัดการไฟล์ในไดรฟ์ทั้งหมดได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับขอบเขตของไดรฟ์ได้ที่หัวข้อเลือกขอบเขต Google Drive API
ตัวอย่างโค้ดยังประกาศประเภท MIME ของการส่งออกเป็น application/pdf
ด้วย ดูรายการประเภท MIME การส่งออกทั้งหมดที่รองรับสำหรับเอกสาร Google Workspace แต่ละรายการได้ที่ประเภท MIME การส่งออกสำหรับเอกสาร Google Workspace
ส่งออกเนื้อหาเอกสาร Google Workspace ในเบราว์เซอร์
หากต้องการส่งออกเนื้อหาเอกสารของ Google Workspace ภายในเบราว์เซอร์ ให้ใช้ช่อง exportLinks
ของทรัพยากร files
ระบบจะแสดงลิงก์สำหรับดาวน์โหลดไฟล์และเนื้อหาของไฟล์สำหรับ MIME ทุกประเภทที่มีให้ใช้งาน ทั้งนี้ขึ้นอยู่กับประเภทเอกสาร คุณจะเปลี่ยนเส้นทางผู้ใช้ไปยัง URL หรือเสนอเป็นลิงก์ที่คลิกได้ก็ได้
ส่งออกเนื้อหาของเอกสาร Google Workspace เวอร์ชันก่อนหน้าในเบราว์เซอร์
หากต้องการส่งออกเนื้อหาเอกสาร Google Workspace เวอร์ชันเก่าภายในเบราว์เซอร์ ให้ใช้เมธอด revisions.get
พร้อมรหัสของไฟล์ที่จะดาวน์โหลดและรหัสของฉบับแก้ไขเพื่อสร้างลิงก์การส่งออกที่คุณใช้ดาวน์โหลดได้ หากผู้ใช้มีสิทธิ์ดาวน์โหลดไฟล์ ระบบจะแสดงลิงก์สำหรับดาวน์โหลดไฟล์และเนื้อหาของไฟล์ คุณสามารถเปลี่ยนเส้นทางผู้ใช้ไปยัง URL นี้ หรือเสนอเป็นลิงก์ที่คลิกได้
ส่งออกเนื้อหาเอกสาร Google Workspace ระหว่างการดำเนินการที่ใช้เวลานาน
หากต้องการส่งออกเนื้อหาเอกสารของ Google Workspace ระหว่างการดำเนินการที่ใช้เวลานาน ให้ใช้เมธอด files.download
กับรหัสของไฟล์ที่จะดาวน์โหลดและรหัสของการแก้ไข ดูข้อมูลเพิ่มเติมได้ที่จัดการการดำเนินการที่ใช้เวลานาน