Google Drive API รองรับการดาวน์โหลดและส่งออกหลายประเภทตามที่ระบุไว้ในตารางต่อไปนี้
การดาวน์โหลด |
|
|||
การส่งออก |
|
ก่อนดาวน์โหลดหรือส่งออกเนื้อหาไฟล์ โปรดยืนยันว่าผู้ใช้ดาวน์โหลดไฟล์ได้โดยใช้ช่อง capabilities.canDownload
ในทรัพยากร files
ส่วนที่เหลือของคู่มือนี้จะให้คำแนะนำโดยละเอียดสำหรับการดำเนินการดาวน์โหลดและส่งออกประเภทเหล่านี้
ดาวน์โหลดเนื้อหาไฟล์ Blob
หากต้องการดาวน์โหลดไฟล์ Blob ที่เก็บไว้ในไดรฟ์ ให้ใช้เมธอด files.get
พร้อมรหัสของไฟล์เพื่อดาวน์โหลดและพารามิเตอร์ URL ของ alt=media
พารามิเตอร์ของ URL alt=media
จะบอกเซิร์ฟเวอร์ว่ามีการขอดาวน์โหลดเนื้อหาเป็นรูปแบบการตอบสนองทางเลือก
พารามิเตอร์ของ URL alt=media
คือพารามิเตอร์ของระบบ
ที่มีอยู่ใน Google REST API ทั้งหมด หากใช้ไลบรารีของไคลเอ็นต์สำหรับ 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
เพื่อระบุว่าผู้ใช้รับทราบถึงความเสี่ยงในการดาวน์โหลดซอฟต์แวร์ไม่พึงประสงค์หรือไฟล์อื่นๆ ที่เป็นการละเมิด แอปพลิเคชันควรเตือนผู้ใช้แบบอินเทอร์แอกทีฟก่อนใช้พารามิเตอร์การค้นหานี้
ดาวน์โหลดบางส่วน
การดาวน์โหลดบางส่วนเกี่ยวข้องกับการดาวน์โหลดเฉพาะบางส่วนของไฟล์เท่านั้น คุณระบุส่วนของไฟล์ที่ต้องการดาวน์โหลดได้โดยใช้ Byterange ที่มีส่วนหัว Range
เช่น
Range: bytes=500-999
ดาวน์โหลดเนื้อหาไฟล์ Blob ในเวอร์ชันก่อนหน้า
หากต้องการดาวน์โหลดเนื้อหาของไฟล์ blob จากเวอร์ชันก่อนหน้า ให้ใช้เมธอด revisions.get
ที่มีรหัสของไฟล์ที่จะดาวน์โหลด รหัสของการแก้ไข และพารามิเตอร์ URL ของ alt=media
พารามิเตอร์ของ URL alt=media
จะบอกเซิร์ฟเวอร์ว่ามีการขอดาวน์โหลดเนื้อหาเป็นรูปแบบการตอบสนองทางเลือก นอกจากนี้เมธอด revisions.get
ยังยอมรับพารามิเตอร์การค้นหาที่ไม่บังคับ acknowledgeAbuse
และส่วนหัว Range
อีกด้วย เช่นเดียวกับ files.get
ดูข้อมูลเพิ่มเติมเกี่ยวกับการดาวน์โหลดการแก้ไขได้ที่ดาวน์โหลดและเผยแพร่การแก้ไขไฟล์
ดาวน์โหลดเนื้อหาไฟล์ Blob ในเบราว์เซอร์
หากต้องการดาวน์โหลดเนื้อหาของไฟล์ BLOB ที่จัดเก็บไว้ในไดรฟ์ภายในเบราว์เซอร์ ให้ใช้ช่อง webContentLink
ของทรัพยากร files
แทนการดาวน์โหลดผ่าน API หากผู้ใช้มีสิทธิ์ดาวน์โหลดไฟล์ ระบบจะส่งลิงก์สำหรับการดาวน์โหลดไฟล์และเนื้อหากลับมา คุณสามารถเปลี่ยนเส้นทางผู้ใช้ไปยัง URL นี้ หรือเสนอเป็นลิงก์ที่คลิกได้
ส่งออกเนื้อหาเอกสารใน 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 หรือเสนอเป็นลิงก์ที่คลิกได้
ส่งออกเนื้อหาเอกสารใน Google Workspace ในเบราว์เซอร์เวอร์ชันก่อนหน้า
หากต้องการส่งออกเนื้อหาเอกสารใน Google Workspace เวอร์ชันก่อนหน้าภายในเบราว์เซอร์ ให้ใช้เมธอด revisions.get
กับรหัสของไฟล์เพื่อดาวน์โหลดและรหัสของการแก้ไข หากผู้ใช้มีสิทธิ์ดาวน์โหลดไฟล์ ระบบจะส่งคืนลิงก์สำหรับดาวน์โหลดไฟล์และเนื้อหาในไฟล์ คุณสามารถเปลี่ยนเส้นทางผู้ใช้ไปยัง URL นี้ หรือเสนอเป็นลิงก์ที่คลิกได้