Google Drive API ช่วยให้คุณอัปโหลดข้อมูลไฟล์ได้เมื่อสร้างหรืออัปเดต File
ดูข้อมูลเกี่ยวกับวิธีสร้างไฟล์ที่มีเฉพาะข้อมูลเมตา เช่น โฟลเดอร์ ได้ที่หัวข้อสร้างไฟล์ที่มีเฉพาะข้อมูลเมตา
การอัปโหลดที่คุณทำได้มี 3 ประเภท ดังนี้
การอัปโหลดแบบง่าย (
uploadType=media
): ใช้การอัปโหลดประเภทนี้เพื่อโอนไฟล์สื่อขนาดเล็ก (5 MB หรือน้อยกว่า) โดยไม่ต้องระบุข้อมูลเมตา หากต้องการทำการอัปโหลดแบบง่าย โปรดดูทำการอัปโหลดแบบง่ายการอัปโหลดแบบหลายส่วน (
uploadType=multipart
): "ใช้การอัปโหลดประเภทนี้เพื่อโอนไฟล์ขนาดเล็ก (5 MB หรือน้อยกว่า) พร้อมกับข้อมูลเมตาที่อธิบายไฟล์ในคำขอเดียว หากต้องการอัปโหลดแบบหลายไฟล์ โปรดดูการอัปโหลดแบบหลายไฟล์การอัปโหลดแบบดำเนินการต่อได้ (
uploadType=resumable
): ใช้การอัปโหลดประเภทนี้สำหรับไฟล์ขนาดใหญ่ (มากกว่า 5 MB) และเมื่อมีโอกาสสูงที่เครือข่ายจะหยุดชะงัก เช่น เมื่อสร้างไฟล์จากแอปบนอุปกรณ์เคลื่อนที่ การอัปโหลดแบบดำเนินการต่อได้ยังเป็นตัวเลือกที่ดีสำหรับแอปพลิเคชันส่วนใหญ่ด้วย เนื่องจากสามารถทำงานกับไฟล์ขนาดเล็กได้ด้วย โดยจะมีค่าใช้จ่ายเพิ่มเติมเพียงคําขอ HTTP 1 รายการต่อการอัปโหลด หากต้องการทำการอัปโหลดที่ดำเนินการต่อได้ โปรดดูทำการอัปโหลดที่ดำเนินการต่อได้
ไลบรารีของไคลเอ็นต์ Google API ใช้การอัปโหลดประเภทใดประเภทหนึ่งต่อไปนี้เป็นอย่างน้อย ดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธีใช้แต่ละประเภทได้ที่เอกสารประกอบเกี่ยวกับไลบรารีของไคลเอ็นต์
ใช้ PATCH
เทียบกับ PUT
โปรดทราบว่าคําสั่ง HTTP PATCH
รองรับการอัปเดตทรัพยากรไฟล์บางส่วน ส่วนคําสั่ง HTTP PUT
รองรับการเปลี่ยนทรัพยากรทั้งหมด โปรดทราบว่า PUT
อาจทำให้เกิดการเปลี่ยนแปลงที่ส่งผลเสียเมื่อเพิ่มฟิลด์ใหม่ลงในทรัพยากรที่มีอยู่
เมื่ออัปโหลดทรัพยากรไฟล์ ให้ทำตามหลักเกณฑ์ต่อไปนี้
- ใช้คํากริยา HTTP ที่ระบุไว้ในข้อมูลอ้างอิง API สําหรับคําขอเริ่มต้นของการอัปโหลดแบบเริ่มใหม่ได้ หรือสําหรับคําขอการอัปโหลดแบบง่ายหรือแบบหลายส่วนเท่านั้น
- ใช้
PUT
สำหรับคำขอการอัปโหลดแบบเริ่มใหม่ได้ทั้งหมดในภายหลังเมื่อคำขอเริ่มต้นแล้ว คำขอเหล่านี้จะอัปโหลดเนื้อหาไม่ว่าจะเรียกใช้เมธอดใดก็ตาม
อัปโหลดแบบง่าย
หากต้องการอัปโหลดแบบง่าย ให้ใช้เมธอด files.create
กับ uploadType=media
ต่อไปนี้คือวิธีอัปโหลดแบบง่าย
สร้างคำขอ
POST
ไปยัง URI /upload ของเมธอดด้วยพารามิเตอร์การค้นหาของuploadType=media
ดังนี้POST https://www.googleapis.com/upload/drive/v3/files?uploadType=media
เพิ่มข้อมูลของไฟล์ลงในเนื้อหาคำขอ
เพิ่มส่วนหัว HTTP ต่อไปนี้
Content-Type
. ตั้งค่าเป็นประเภทสื่อ MIME ของออบเจ็กต์ที่อัปโหลดContent-Length
. ตั้งค่าเป็นจำนวนไบต์ที่คุณอัปโหลด หากใช้การเข้ารหัสการโอนแบบแบ่งกลุ่ม คุณไม่จำเป็นต้องใช้ส่วนหัวนี้
ส่งคำขอ หากคำขอสำเร็จ เซิร์ฟเวอร์จะแสดงรหัสสถานะ
HTTP 200 OK
พร้อมกับข้อมูลเมตาของไฟล์ {HTTP}
เมื่อทำการอัปโหลดแบบง่าย ระบบจะสร้างข้อมูลเมตาพื้นฐานและอนุมานแอตทริบิวต์บางอย่างจากไฟล์ เช่น ประเภท MIME หรือ modifiedTime
คุณใช้การอัปโหลดแบบง่ายได้ในกรณีที่มีไฟล์ขนาดเล็กและข้อมูลเมตาของไฟล์ไม่สำคัญ
ทำการอัปโหลดหลายส่วน
คำขออัปโหลดแบบหลายส่วนช่วยให้คุณอัปโหลดข้อมูลเมตาและข้อมูลในคำขอเดียวกันได้ ใช้ตัวเลือกนี้หากข้อมูลที่คุณส่งมีขนาดเล็กพอที่จะอัปโหลดอีกครั้งได้ทั้งหมดหากการเชื่อมต่อล้มเหลว
หากต้องการทำการอัปโหลดแบบหลายส่วน ให้ใช้เมธอด files.create
กับ uploadType=multipart
ต่อไปนี้คือวิธีดำเนินการอัปโหลดแบบหลายส่วน
สร้างคำขอ
POST
ไปยัง URI /upload ของเมธอดด้วยพารามิเตอร์การค้นหาของuploadType=multipart
ดังนี้POST https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart
สร้างเนื้อหาของคำขอ จัดรูปแบบเนื้อหาตามประเภทเนื้อหาแบบหลายส่วน/เนื้อหาที่เกี่ยวข้อง RFC 2387 ซึ่งมี 2 ส่วน ดังนี้
- ข้อมูลเมตา ข้อมูลเมตาต้องมาก่อนและต้องตั้งค่า
Content-Type
ส่วนหัวเป็นapplication/json;
charset=UTF-8
เพิ่มข้อมูลเมตาของไฟล์ในรูปแบบ JSON - สื่อ สื่อต้องอยู่ลำดับที่ 2 และต้องมีส่วนหัว
Content-Type
ของ MIME ประเภทใดก็ได้ เพิ่มข้อมูลของไฟล์ลงในส่วนสื่อ
ระบุแต่ละส่วนด้วยสตริงขอบเขตที่มีขีดกลาง 2 ขีดนำหน้า นอกจากนี้ ให้เพิ่มขีดกลาง 2 ตัวต่อจากสตริงขอบเขตสุดท้าย
- ข้อมูลเมตา ข้อมูลเมตาต้องมาก่อนและต้องตั้งค่า
เพิ่มส่วนหัว HTTP ระดับบนสุดต่อไปนี้
Content-Type
ตั้งค่าเป็นmultipart/related
และใส่สตริงขอบเขตที่คุณใช้เพื่อระบุส่วนต่างๆ ของคําขอ เช่นContent-Type: multipart/related; boundary=foo_bar_baz
Content-Length
. ตั้งค่าเป็นจํานวนไบต์ทั้งหมดในเนื้อหาคําขอ
ส่งคำขอ
หากต้องการสร้างหรืออัปเดตเฉพาะส่วนข้อมูลเมตาโดยไม่มีข้อมูลที่เชื่อมโยง ให้ส่งคําขอ POST
หรือ PATCH
ไปยังปลายทางทรัพยากรมาตรฐาน ดังนี้
https://www.googleapis.com/drive/v3/files
หากคําขอสําเร็จ เซิร์ฟเวอร์จะแสดงรหัสสถานะ HTTP 200 OK
พร้อมกับข้อมูลเมตาของไฟล์
เมื่อสร้างไฟล์ ผู้ใช้ควรระบุนามสกุลไฟล์ในname
ช่องของไฟล์ เช่น เมื่อสร้างไฟล์ JPEG ของรูปภาพ คุณอาจระบุข้อมูลอย่างเช่น "name": "photo.jpg"
ในข้อมูลเมตา การเรียกใช้ files.get
ในภายหลังจะแสดงพร็อพเพอร์ตี้ fileExtension
แบบอ่านอย่างเดียวซึ่งมีส่วนขยายที่ระบุไว้ในฟิลด์ name
เดิม
ทำการอัปโหลดที่ดำเนินการต่อได้
การอัปโหลดที่กลับมาดำเนินการต่อได้ช่วยให้คุณดำเนินการอัปโหลดต่อได้หลังจากการสื่อสารไม่สำเร็จขัดจังหวะการไหลของข้อมูล เนื่องจากคุณไม่จําเป็นต้องเริ่มการอัปโหลดไฟล์ขนาดใหญ่อีกครั้งตั้งแต่ต้น การอัปโหลดที่กลับมาดำเนินการต่อได้ยังช่วยลดการใช้แบนด์วิดท์ได้อีกด้วยหากเครือข่ายขัดข้อง
การอัปโหลดที่กลับมาดำเนินการต่อได้จะมีประโยชน์เมื่อไฟล์มีขนาดใหญ่แตกต่างกันมากหรือเมื่อคำขอมีเวลาจำกัด (เช่น งานเบื้องหลังของระบบปฏิบัติการบนอุปกรณ์เคลื่อนที่และคําขอ App Engine บางรายการ) นอกจากนี้ คุณยังอาจใช้การอัปโหลดที่อัปโหลดต่อได้ในกรณีที่ต้องการแสดงแถบความคืบหน้าการอัปโหลด
การอัปโหลดที่กลับมาดำเนินการต่อได้ประกอบด้วยขั้นตอนระดับสูงหลายขั้นตอน ดังนี้
- ส่งคำขอเริ่มต้นและเรียกข้อมูล URI ของเซสชันที่กลับมาทำงานต่อได้
- อัปโหลดข้อมูลและตรวจสอบสถานะการอัปโหลด
- (ไม่บังคับ) หากการอัปโหลดถูกรบกวน ให้อัปโหลดต่อ
ส่งคำขอเริ่มต้น
หากต้องการเริ่มการอัปโหลดแบบอัปโหลดต่อได้ ให้ใช้วิธี files.create
กับ uploadType=resumable
สร้างคำขอ
POST
ไปยัง URI /upload ของเมธอดด้วยพารามิเตอร์การค้นหาของuploadType=resumable
ดังนี้POST https://www.googleapis.com/upload/drive/v3/files?uploadType=resumable
หากคําขอเริ่มต้นสําเร็จ การตอบกลับจะมี
200 OK
รหัสสถานะ HTTP นอกจากนี้ การตอบกลับยังมีส่วนหัวLocation
ที่ระบุ URI ของเซสชันที่กลับมาทำงานต่อได้ ดังนี้HTTP/1.1 200 OK Location: https://www.googleapis.com/upload/drive/v3/files?uploadType=resumable&upload_id=xa298sd_sdlkj2 Content-Length: 0
บันทึก URI ของเซสชันที่กลับมาดำเนินการต่อได้เพื่อให้คุณอัปโหลดข้อมูลไฟล์และค้นหาสถานะการอัปโหลดได้ URI ของเซสชันที่กลับมาดำเนินการต่อได้จะหมดอายุหลังจากผ่านไป 1 สัปดาห์
หากคุณมีข้อมูลเมตาของไฟล์ ให้เพิ่มข้อมูลเมตานั้นลงในเนื้อหาคำขอในรูปแบบ JSON หรือหากไม่ต้องการ ให้ปล่อยเนื้อหาของคำขอว่างไว้
เพิ่มส่วนหัว HTTP ต่อไปนี้
X-Upload-Content-Type
ไม่บังคับ ตั้งค่าเป็นประเภท MIME ของข้อมูลไฟล์ ซึ่งระบบจะโอนในคำขอต่อๆ ไป หากไม่ได้ระบุประเภท MIME ของข้อมูลในข้อมูลเมตาหรือผ่านส่วนหัวนี้ ระบบจะแสดงออบเจ็กต์เป็นapplication/octet-stream.
X-Upload-Content-Length
ไม่บังคับ ตั้งค่าเป็นจำนวนไบต์ของข้อมูลไฟล์ที่จะโอนในคำขอต่อๆ ไปContent-Type
ต้องระบุหากมีข้อมูลเมตาของไฟล์ ตั้งค่าเป็นapplication/json;
charset=UTF-8
Content-Length
ต้องระบุ เว้นแต่คุณจะใช้การเข้ารหัสการโอนแบบแบ่งกลุ่ม ตั้งค่าเป็นจํานวนไบต์ในเนื้อหาของคําขอเริ่มต้นนี้
ส่งคำขอ หากคําขอเริ่มต้นเซสชันสําเร็จ การตอบกลับจะมีรหัสสถานะ
200 OK HTTP
นอกจากนี้ การตอบกลับยังมีส่วนหัวLocation
ที่ระบุ URI ของเซสชันที่กลับมาดำเนินการต่อได้ ใช้ URI ของเซสชันที่กลับมาดำเนินการต่อได้เพื่ออัปโหลดข้อมูลไฟล์และค้นหาสถานะการอัปโหลด URI ของเซสชันที่กลับมาดำเนินการต่อได้จะหมดอายุหลังจากผ่านไป 1 สัปดาห์คัดลอกและบันทึก URL เซสชันที่กลับมาทำงานต่อได้
ดำเนินการต่อเพื่ออัปโหลดเนื้อหา
อัปโหลดเนื้อหา
การอัปโหลดไฟล์ด้วยเซสชันที่อัปโหลดต่อได้ทำได้ 2 วิธีดังนี้
- อัปโหลดเนื้อหาในคำขอเดียว: ใช้แนวทางนี้เมื่ออัปโหลดไฟล์ได้ในคำขอเดียว หากไม่มีการกำหนดเวลาตายตัวสำหรับคำขอเดียว หรือคุณไม่จำเป็นต้องแสดงตัวบ่งชี้ความคืบหน้าการอัปโหลด วิธีนี้เหมาะที่สุดเนื่องจากต้องใช้คําขอน้อยลงและส่งผลให้มีประสิทธิภาพดีขึ้น
อัปโหลดเนื้อหาเป็นหลายกลุ่ม: ใช้แนวทางนี้หากต้องลดปริมาณข้อมูลที่โอนในคําขอเดียว คุณอาจต้องลดข้อมูลที่โอนเมื่อมีการกำหนดเวลาตายตัวสำหรับคำขอแต่ละรายการ เช่น คำขอ App Engine บางคลาส วิธีนี้ยังมีประโยชน์ในกรณีที่คุณต้องระบุตัวบ่งชี้ที่กําหนดเองเพื่อแสดงความคืบหน้าในการอัปโหลด
- สร้างคำขอ
PUT
ไปยัง URI ของเซสชันที่กลับมาทำงานต่อได้ - เพิ่มข้อมูลของไฟล์ลงในเนื้อหาคำขอ
- เพิ่มส่วนหัว HTTP ของ Content-Length โดยตั้งค่าเป็นจำนวนไบต์ในไฟล์
- ส่งคำขอ หากคำขออัปโหลดถูกขัดจังหวะหรือคุณได้รับการตอบกลับ
5xx
ให้ทำตามขั้นตอนในหัวข้ออัปโหลดต่อจากที่ถูกขัดจังหวะ
สร้างคำขอ
PUT
ไปยัง URI ของเซสชันที่กลับมาทำงานต่อได้เพิ่มข้อมูลของข้อมูลไปยังเนื้อหาคำขอ สร้างข้อมูลเป็นกลุ่มที่มีขนาดเป็นจํานวนเท่าของ 256 KB (256 x 1024 ไบต์) ยกเว้นกลุ่มสุดท้ายที่อัปโหลดเสร็จสมบูรณ์ กำหนดขนาดของข้อมูลแต่ละกลุ่มให้ใหญ่ที่สุดเพื่อให้การอัปโหลดมีประสิทธิภาพ
เพิ่มส่วนหัว HTTP ต่อไปนี้
Content-Length
. ตั้งค่าเป็นจำนวนไบต์ในข้อมูลโค้ดปัจจุบันContent-Range
ตั้งค่าเพื่อแสดงไบต์ในไฟล์ที่คุณอัปโหลด เช่นContent-Range: bytes 0-524287/2000000
แสดงว่าคุณอัปโหลดไบต์ 524,288 ไบต์แรก (256 x 1024 x 2) ในไฟล์ 2,000,000 ไบต์
ส่งคำขอและประมวลผลคำตอบ หากคำขออัปโหลดถูกขัดจังหวะหรือคุณได้รับการตอบกลับ
5xx
ให้ทำตามขั้นตอนในอัปโหลดต่อจากครั้งที่ขัดจังหวะทำซ้ำขั้นตอนที่ 1 ถึง 4 สำหรับแต่ละส่วนที่ยังคงอยู่ในไฟล์ ใช้ส่วนหัว
Range
ในคำตอบเพื่อกำหนดจุดเริ่มต้นของข้อมูลส่วนถัดไป อย่าคิดว่าเซิร์ฟเวอร์ได้รับไบต์ทั้งหมดที่ส่งในคำขอก่อนหน้า
เมื่ออัปโหลดไฟล์ทั้งหมดเสร็จแล้ว คุณจะได้รับคำตอบ 200 OK
หรือ 201 Created
พร้อมกับข้อมูลเมตาที่เชื่อมโยงกับทรัพยากร
อัปโหลดต่อ
หากคำขออัปโหลดสิ้นสุดลงก่อนที่จะได้รับการตอบกลับ หรือหากคุณได้รับการตอบกลับ 503
Service Unavailable
คุณต้องอัปโหลดที่หยุดชะงักต่อ
หากต้องการขอสถานะการอัปโหลด ให้สร้างคำขอ
PUT
เปล่าไปยัง URI เซสชันที่กลับมาดำเนินการต่อได้เพิ่มส่วนหัว
Content-Range
เพื่อระบุว่าไม่ทราบตำแหน่งปัจจุบันในไฟล์ เช่น ตั้งค่าContent-Range
เป็น*/2000000
หากความยาวไฟล์ทั้งหมดคือ 2,000,000 ไบต์ หากไม่ทราบขนาดไฟล์ทั้งหมด ให้ตั้งค่าContent-Range
เป็น*/*
ส่งคำขอ
ประมวลผลการตอบกลับ
- การตอบกลับ
200 OK
หรือ201 Created
บ่งบอกว่าการอัปโหลดเสร็จสมบูรณ์แล้ว และไม่จำเป็นต้องดำเนินการใดๆ เพิ่มเติม - การตอบกลับ
308 Resume Incomplete
หมายความว่าคุณต้องอัปโหลดไฟล์ต่อ - การตอบกลับ
404 Not Found
บ่งชี้ว่าเซสชันการอัปโหลดหมดอายุแล้ว และคุณต้องเริ่มการอัปโหลดใหม่ตั้งแต่ต้น
- การตอบกลับ
หากได้รับการตอบกลับ
308 Resume Incomplete
ให้ประมวลผลส่วนหัวRange
ของการตอบกลับเพื่อดูว่าเซิร์ฟเวอร์ได้รับไบต์ใด หากคําตอบไม่มีส่วนหัวRange
แสดงว่าระบบไม่ได้รับไบต์ใดๆ เช่น ส่วนหัวRange
ของbytes=0-42
บ่งบอกว่าระบบได้รับไบต์แรกของไฟล์ 43 ไบต์ และข้อมูลที่จะอัปโหลดต่อไปจะเริ่มที่ไบต์ 44เมื่อทราบตําแหน่งที่จะอัปโหลดต่อแล้ว ให้อัปโหลดไฟล์ต่อโดยเริ่มจากไบต์ถัดไป ใส่ส่วนหัว
Content-Range
เพื่อระบุส่วนที่ส่งของไฟล์ เช่นContent-Range: bytes 43-1999999
บ่งบอกว่าคุณส่งไบต์ 44 ถึง 2,000,000
จัดการข้อผิดพลาดในการอัปโหลดสื่อ
เมื่ออัปโหลดสื่อ ให้ทำตามแนวทางปฏิบัติแนะนำต่อไปนี้เพื่อจัดการข้อผิดพลาด
- สำหรับข้อผิดพลาด
5xx
ให้ดำเนินการอัปโหลดต่อหรือลองอีกครั้งหากอัปโหลดไม่สำเร็จเนื่องจากการเชื่อมต่อถูกขัดจังหวะ ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการข้อผิดพลาด5xx
ได้ที่ข้อผิดพลาด 500, 502, 503, 504 - หากเกิดข้อผิดพลาด
403 rate limit
ให้ลองอัปโหลดอีกครั้ง ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการข้อผิดพลาด403 rate limit
ได้ที่ข้อผิดพลาด 403:rateLimitExceeded
- หากพบข้อผิดพลาด
4xx
(รวมถึง403
) ขณะอัปโหลดที่ดำเนินการต่อได้ ให้เริ่มอัปโหลดอีกครั้ง ข้อผิดพลาดเหล่านี้บ่งบอกว่าเซสชันการอัปโหลดหมดอายุแล้วและต้องเริ่มต้นใหม่โดยขอ URI ของเซสชันใหม่ เซสชันการอัปโหลดจะหมดอายุหลังจากไม่มีการใช้งานเป็นเวลา 1 สัปดาห์ด้วย
ประเภทการนําเข้าไปยัง Google เอกสาร
เมื่อสร้างไฟล์ในไดรฟ์ คุณอาจต้องการแปลงไฟล์เป็นประเภทไฟล์ Google Workspace เช่น Google เอกสารหรือชีต เช่น คุณอาจต้องการเปลี่ยนรูปแบบเอกสารจากโปรแกรมประมวลผลคำที่คุณชื่นชอบเป็นเอกสารใน Google เอกสารเพื่อใช้ประโยชน์จากฟีเจอร์ต่างๆ
หากต้องการแปลงไฟล์เป็นประเภทไฟล์ Google Workspace ที่เฉพาะเจาะจง ให้ระบุ Google Workspace mimeType
เมื่อสร้างไฟล์
ต่อไปนี้คือวิธีแปลงไฟล์ CSV เป็นชีต Google Workspace
หากต้องการดูว่า Conversion พร้อมใช้งานหรือไม่ ให้ตรวจสอบอาร์เรย์ importFormats
ของทรัพยากร about
ก่อนสร้างไฟล์
Conversion ที่รองรับจะแสดงในอาร์เรย์นี้แบบไดนามิก รูปแบบการนําเข้าที่พบได้ทั่วไปมีดังนี้
จาก | ถึง |
---|---|
Microsoft Word, ข้อความ OpenDocument, HTML, RTF, ข้อความธรรมดา | Google เอกสาร |
Microsoft Excel, สเปรดชีต OpenDocument, CSV, TSV, ข้อความธรรมดา | Google ชีต |
Microsoft PowerPoint, OpenDocument Presentation | Google สไลด์ |
JPEG, PNG, GIF, BMP, PDF | Google เอกสาร (ฝังรูปภาพในเอกสาร) |
ข้อความธรรมดา (ประเภท MIME พิเศษ), JSON | Google Apps Script |
เมื่อคุณอัปโหลดและแปลงสื่อระหว่างupdate
คำขอไปยังไฟล์เอกสาร ชีต หรือสไลด์ ระบบจะแทนที่เนื้อหาทั้งหมดของเอกสาร
เมื่อคุณแปลงรูปภาพเป็นเอกสาร ไดรฟ์จะใช้การรู้จำอักขระด้วยภาพ (OCR) เพื่อแปลงรูปภาพเป็นข้อความ คุณสามารถปรับปรุงคุณภาพของอัลกอริทึม OCR ได้โดยระบุรหัสภาษา BCP 47 ที่เกี่ยวข้องในพารามิเตอร์ ocrLanguage
ข้อความที่ดึงมาจะปรากฏในเอกสารข้างรูปภาพที่ฝัง
ใช้รหัสที่สร้างขึ้นล่วงหน้าเพื่ออัปโหลดไฟล์
Drive API ช่วยให้คุณเรียกข้อมูลรายการรหัสไฟล์ที่สร้างไว้ล่วงหน้าซึ่งใช้เพื่ออัปโหลดและสร้างทรัพยากรได้ คำขออัปโหลดและการสร้างไฟล์จะใช้รหัสที่สร้างขึ้นล่วงหน้าเหล่านี้ได้ ตั้งค่าช่อง id
ในข้อมูลเมตาของไฟล์
หากต้องการสร้างรหัสที่สร้างขึ้นล่วงหน้า ให้เรียกใช้ files.generateIds
พร้อมจำนวนรหัสที่จะสร้าง
คุณลองอัปโหลดอีกครั้งด้วยรหัสที่สร้างขึ้นล่วงหน้าได้หากมีข้อผิดพลาดที่ไม่แน่ชัดเกี่ยวกับเซิร์ฟเวอร์หรือหมดเวลา หากสร้างไฟล์สำเร็จ การพยายามสร้างไฟล์อีกครั้งจะแสดงข้อผิดพลาด HTTP 409
และไม่สร้างไฟล์ที่ซ้ำกัน
กำหนดข้อความที่จัดทําดัชนีได้สําหรับประเภทไฟล์ที่ไม่รู้จัก
ผู้ใช้สามารถใช้ UI ของไดรฟ์เพื่อค้นหาเนื้อหาเอกสารได้ นอกจากนี้ คุณยังใช้files.list
และช่อง fullText
เพื่อค้นหาเนื้อหาจากแอปได้ด้วย ดูข้อมูลเพิ่มเติมได้ที่ค้นหาไฟล์และโฟลเดอร์
ไดรฟ์จะจัดทําดัชนีเอกสารสําหรับการค้นหาโดยอัตโนมัติเมื่อจดจําประเภทไฟล์ได้ ซึ่งรวมถึงเอกสารข้อความ, PDF, รูปภาพที่มีข้อความ และประเภทอื่นๆ ที่พบบ่อย หากแอปบันทึกไฟล์ประเภทอื่นๆ (เช่น ภาพวาด วิดีโอ และทางลัด) คุณสามารถปรับปรุงการค้นพบได้โดยระบุข้อความที่จัดทำดัชนีได้ในช่อง contentHints.indexableText
ของไฟล์
ดูข้อมูลเพิ่มเติมเกี่ยวกับข้อความที่จัดทําดัชนีได้ได้ที่จัดการข้อมูลเมตาของไฟล์