Google ไดรฟ์ API รองรับการดำเนินการดาวน์โหลดและส่งออกหลายประเภทตามที่แสดงในตารางต่อไปนี้
ดาวน์โหลดการดำเนินการ |
|
||||
ส่งออกการดําเนินการ |
|
ก่อนดาวน์โหลดหรือส่งออกเนื้อหาไฟล์ ให้ตรวจสอบว่าผู้ใช้ดาวน์โหลดไฟล์ได้โดยใช้ช่อง capabilities.canDownload
ในแหล่งข้อมูล files
ดูคำอธิบายประเภทไฟล์ที่กล่าวถึงที่นี่ รวมถึงไฟล์ Blob และ Google Workspace ได้ที่ประเภทไฟล์
ส่วนที่เหลือของคู่มือนี้จะแสดงวิธีการโดยละเอียดสำหรับการดําเนินการดาวน์โหลดและการส่งออกประเภทเหล่านี้
ดาวน์โหลดเนื้อหาไฟล์ Blob
หากต้องการดาวน์โหลดไฟล์ Blob ที่เก็บไว้ในไดรฟ์ ให้ใช้เมธอด files.get
พร้อมรหัสของไฟล์ที่จะดาวน์โหลดและพารามิเตอร์ URL alt=media
พารามิเตอร์ alt=media
URL บอกเซิร์ฟเวอร์ว่ามีการขอการดาวน์โหลดเนื้อหาเป็นรูปแบบการตอบกลับทางเลือก
พารามิเตอร์ URL alt=media
เป็นพารามิเตอร์ของระบบที่ใช้ได้กับ REST API ทั้งหมดของ Google หากใช้ไลบรารีไคลเอ็นต์สำหรับ Drive API คุณไม่จำเป็นต้องตั้งค่าพารามิเตอร์นี้อย่างชัดเจน
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้เมธอด files.get
เพื่อดาวน์โหลดไฟล์ด้วยไลบรารีของไคลเอ็นต์ Drive API
ตัวอย่างโค้ดนี้ใช้เมธอดของไลบรารีที่เพิ่มพารามิเตอร์ 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/{}/revisions/{
FILE_ID }?alt=media
REVISION_ID
ดาวน์โหลดเนื้อหาไฟล์ 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
ตัวอย่างโค้ดนี้ใช้ขอบเขต drive
แบบจํากัดซึ่งอนุญาตให้ผู้ใช้ดูและจัดการไฟล์ทั้งหมดในไดรฟ์ ดูข้อมูลเพิ่มเติมเกี่ยวกับขอบเขตของไดรฟ์ได้ที่หัวข้อเลือกขอบเขต Google Drive API
ตัวอย่างโค้ดยังประกาศประเภท 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
พร้อมรหัสของไฟล์ที่จะดาวน์โหลดและรหัสของฉบับแก้ไข ดูข้อมูลเพิ่มเติมได้ที่จัดการการดำเนินการที่ทำงานต่อเนื่อง