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
จะไม่ได้รับสิทธิ์ให้ดาวน์โหลดเนื้อหาของไฟล์
ตัวอย่างโค้ดนี้ใช้ขอบเขตไฟล์ "ไดรฟ์" แบบจํากัดซึ่งอนุญาตให้ผู้ใช้ดูและจัดการไฟล์ทั้งหมดในไดรฟ์ โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับขอบเขตของไดรฟ์ที่หัวข้อเลือกขอบเขต API ของ Google ไดรฟ์
ผู้ใช้ที่มีสิทธิ์แก้ไขสามารถจำกัดการดาวน์โหลดโดยผู้ใช้แบบอ่านอย่างเดียวได้โดยการตั้งค่าช่อง 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
ที่จำกัดซึ่งอนุญาตให้ผู้ใช้ดูและจัดการไฟล์ในไดรฟ์ทั้งหมดของคุณ โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับขอบเขตของไดรฟ์ที่หัวข้อเลือกขอบเขต API ของ Google ไดรฟ์
ตัวอย่างโค้ดยังประกาศประเภท MIME ของการส่งออกเป็น application/pdf
ด้วย โปรดดูรายการประเภท MIME ส่งออกทั้งหมดที่รองรับสำหรับเอกสาร Google Workspace แต่ละรายการที่หัวข้อส่งออกประเภท MIME สำหรับเอกสาร Google Workspace
ส่งออกเนื้อหาเอกสาร Google Workspace ในเบราว์เซอร์
หากต้องการส่งออกเนื้อหาเอกสาร Google Workspace ภายในเบราว์เซอร์ ให้ใช้ช่อง exportLinks
ของแหล่งข้อมูล files
ระบบจะแสดงลิงก์สำหรับดาวน์โหลดไฟล์และเนื้อหาในไฟล์สำหรับ MIME ประเภทใดก็ได้ที่มี ทั้งนี้ขึ้นอยู่กับประเภทเอกสาร คุณสามารถเปลี่ยนเส้นทางผู้ใช้ไปยัง URL หรือเสนอ URL เป็นลิงก์ที่คลิกได้
ส่งออกเนื้อหาเอกสาร Google Workspace เวอร์ชันเก่าในเบราว์เซอร์
หากต้องการส่งออกเนื้อหาเอกสาร Google Workspace เวอร์ชันเก่าภายในเบราว์เซอร์ ให้ใช้เมธอด revisions.get
พร้อมรหัสของไฟล์ที่จะดาวน์โหลดและรหัสของฉบับแก้ไขเพื่อสร้างลิงก์การส่งออกที่คุณใช้ดาวน์โหลดได้ หากผู้ใช้มีสิทธิ์ดาวน์โหลดไฟล์ ระบบจะแสดงลิงก์สำหรับดาวน์โหลดไฟล์และเนื้อหาในไฟล์ คุณจะเปลี่ยนเส้นทางผู้ใช้ไปยัง URL นี้ หรือเสนอเป็นลิงก์ที่คลิกได้ก็ได้
ส่งออกเนื้อหาเอกสาร Google Workspace ระหว่างการดำเนินการที่ใช้เวลานาน
หากต้องการส่งออกเนื้อหาเอกสารของ Google Workspace ระหว่างการดำเนินการที่ใช้เวลานาน ให้ใช้เมธอด files.download
กับรหัสของไฟล์ที่จะดาวน์โหลดและรหัสของการแก้ไข ดูข้อมูลเพิ่มเติมได้ที่จัดการการดำเนินการที่ทำงานต่อเนื่อง