Google Drive API ช่วยให้คุณอัปโหลดข้อมูลไฟล์ได้เมื่อสร้างหรืออัปเดต File
ดูข้อมูลเกี่ยวกับวิธีสร้างไฟล์สำหรับข้อมูลเมตาเท่านั้น เช่น โฟลเดอร์ ได้ในสร้างไฟล์ที่มีเฉพาะข้อมูลเมตา
การอัปโหลดที่คุณทำได้มี 3 ประเภท ดังนี้
การอัปโหลดแบบง่าย (
uploadType=media
): ใช้การอัปโหลดประเภทนี้เพื่อโอนไฟล์สื่อขนาดเล็ก (5 MB หรือน้อยกว่า) โดยไม่ต้องระบุข้อมูลเมตา หากต้องการทำการอัปโหลดแบบง่าย โปรดดูทำการอัปโหลดแบบง่ายการอัปโหลดแบบหลายส่วน (
uploadType=multipart
): "ใช้การอัปโหลดประเภทนี้เพื่อโอนไฟล์ขนาดเล็ก (5 MB หรือน้อยกว่า) พร้อมกับข้อมูลเมตาที่อธิบายไฟล์ในคำขอเดียว หากต้องการอัปโหลดแบบหลายไฟล์ โปรดดูการอัปโหลดแบบหลายไฟล์การอัปโหลดแบบดำเนินการต่อได้ (
uploadType=resumable
): ใช้การอัปโหลดประเภทนี้สำหรับไฟล์ขนาดใหญ่ (มากกว่า 5 MB) และเมื่อมีโอกาสสูงที่เครือข่ายจะหยุดชะงัก เช่น เมื่อสร้างไฟล์จากแอปบนอุปกรณ์เคลื่อนที่ การอัปโหลดแบบดำเนินการต่อได้ยังเป็นตัวเลือกที่ดีสำหรับแอปพลิเคชันส่วนใหญ่ด้วย เนื่องจากสามารถทำงานกับไฟล์ขนาดเล็กได้ด้วย โดยจะมีค่าใช้จ่ายเพิ่มเติมเพียงคําขอ HTTP 1 รายการต่อการอัปโหลด หากต้องการอัปโหลดที่ดำเนินการต่อได้ โปรดดูหัวข้ออัปโหลดต่อได้
ไลบรารีของไคลเอ็นต์ Google API จะใช้การอัปโหลดเหล่านี้อย่างน้อย 1 ประเภท ดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธีใช้แต่ละประเภทได้ในเอกสารประกอบเกี่ยวกับไลบรารีของไคลเอ็นต์
ใช้ PATCH
เทียบกับ PUT
โปรดทราบว่าคําสั่ง HTTP PATCH
รองรับการอัปเดตทรัพยากรไฟล์บางส่วน ส่วนคําสั่ง HTTP PUT
รองรับการเปลี่ยนทรัพยากรทั้งหมด โปรดทราบว่า PUT
อาจทำให้เกิดการเปลี่ยนแปลงที่ส่งผลเสียเมื่อเพิ่มฟิลด์ใหม่ลงในทรัพยากรที่มีอยู่
เมื่ออัปโหลดทรัพยากรไฟล์ ให้ใช้หลักเกณฑ์ต่อไปนี้
- ใช้คำกริยา HTTP ที่บันทึกไว้ในการอ้างอิง API สำหรับคำขอเริ่มต้นของการอัปโหลดที่ดำเนินการต่อได้ หรือสำหรับคำขอเดียวของการอัปโหลดแบบง่ายหรือหลายส่วน
- ใช้
PUT
สำหรับคำขอการอัปโหลดแบบเริ่มใหม่ได้ทั้งหมดในภายหลังเมื่อคำขอเริ่มต้นแล้ว คำขอเหล่านี้อัปโหลดเนื้อหา ไม่ว่าจะเรียกใช้วิธีใดก็ตาม
อัปโหลดแบบง่าย
หากต้องการอัปโหลดแบบง่าย ให้ใช้เมธอด files.create
กับ uploadType=media
รายการต่อไปนี้แสดงวิธีการอัปโหลดอย่างง่าย:
HTTP
สร้างคำขอ
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
ต่อไปนี้คือวิธีดำเนินการอัปโหลดแบบหลายส่วน
Java
Python
Node.js
PHP
.NET
HTTP
สร้างคำขอ
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
HTTP
สร้างคำขอ
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 บางคลาส วิธีนี้ยังมีประโยชน์ในกรณีที่คุณต้องระบุตัวบ่งชี้ที่กําหนดเองเพื่อแสดงความคืบหน้าในการอัปโหลด
HTTP - คำขอเดียว
- สร้างคำขอ
PUT
ไปยัง URI ของเซสชันที่กลับมาทำงานต่อได้ - เพิ่มข้อมูลของไฟล์ลงในเนื้อหาคำขอ
- เพิ่มส่วนหัว HTTP ของ Content-Length โดยตั้งค่าเป็นจำนวนไบต์ในไฟล์
- ส่งคำขอ หากคำขออัปโหลดถูกขัดจังหวะหรือคุณได้รับการตอบกลับ
5xx
ให้ทำตามขั้นตอนในหัวข้อดำเนินการอัปโหลดที่ขัดจังหวะต่อ
HTTP - คำขอหลายรายการ
สร้างคำขอ
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
คุณต้องอัปโหลดที่หยุดชะงักต่อ
HTTP
หากต้องการขอสถานะการอัปโหลด ให้สร้างคำขอ
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 Workspace ที่เฉพาะเจาะจง ให้ระบุ mimeType
Google Workspace เมื่อสร้างไฟล์
ต่อไปนี้คือวิธีแปลงไฟล์ CSV เป็นชีต Google Workspace
Java
Python
Node.js
PHP
.NET
หากต้องการดูว่า 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
ของไฟล์
ดูข้อมูลเพิ่มเติมเกี่ยวกับข้อความที่จัดทําดัชนีได้ได้ที่จัดการข้อมูลเมตาของไฟล์