แสดงผลช่องที่เจาะจงของไฟล์

หากต้องการแสดงช่องที่ต้องการและปรับปรุงประสิทธิภาพ ให้ใช้ fields พารามิเตอร์การค้นหาในการเรียกเมธอด

โดยค่าเริ่มต้น เซิร์ฟเวอร์จะส่งชุดช่องสำหรับแหล่งข้อมูลที่ต้องการกลับไป ที่มีการสอบถาม ตัวอย่างเช่น files.get อาจแสดงผล id, name และ mimeType สำหรับเมธอด แหล่งข้อมูล files เมธอด permissions.get แสดงผล ชุดฟิลด์เริ่มต้นที่แตกต่างกันสำหรับ แหล่งข้อมูล permissions

หลังจากที่เซิร์ฟเวอร์ประมวลผลคำขอที่ถูกต้องซึ่งมีการค้นหา fields แล้ว ระบบจะส่งรหัสสถานะ HTTP 200 OK กลับมาพร้อมกับแท็ก หากพารามิเตอร์การค้นหาช่องมีข้อผิดพลาดหรือไม่ถูกต้อง เซิร์ฟเวอร์แสดงรหัสสถานะ HTTP 400 Bad Request พร้อมข้อผิดพลาด เพื่อระบุว่าตัวเลือกฟิลด์ของคุณมีปัญหาอะไร ตัวอย่างเช่น files.list(fields='files(id,capabilities,canAddChildren)') แสดงข้อผิดพลาด "การเลือกช่องที่ไม่ถูกต้อง canAddChildren" พารามิเตอร์การค้นหาฟิลด์ที่ถูกต้องสำหรับ ตัวอย่างนี้คือ files.list(fields='files(id,capabilities/canAddChildren)')

หากต้องการระบุช่องที่คุณจะส่งคืนโดยใช้พารามิเตอร์ fields ได้ โปรดไปที่ หน้าเอกสารประกอบของทรัพยากรที่กำลังค้นหา เช่น เพื่อดูว่า ฟิลด์ที่คุณสามารถแสดงผลสำหรับไฟล์ได้ โปรดดูเอกสารประกอบเกี่ยวกับแหล่งข้อมูล files

กฎการจัดรูปแบบพารามิเตอร์ของช่อง

รูปแบบของค่าพารามิเตอร์คำขอของช่องจะอิงตาม XPath แบบคร่าวๆ ไวยากรณ์ ต่อไปนี้เป็นกฎการจัดรูปแบบสำหรับพารามิเตอร์ fields ทั้งหมด กฎเหล่านี้ใช้ตัวอย่างที่เกี่ยวข้องกับเมธอด files.get

  • ใช้รายการที่คั่นด้วยเครื่องหมายจุลภาคเพื่อเลือกหลายช่อง เช่น 'name, mimeType'

  • ใช้ a/b เพื่อเลือกช่อง b ที่ซ้อนอยู่ในช่อง a เช่น 'capabilities/canDownload' ดูข้อมูลเพิ่มเติมได้ที่ดึงข้อมูลช่องของ ซ้อนอยู่ แหล่งข้อมูล

  • ใช้ตัวเลือกย่อยเพื่อขอชุดฟิลด์ย่อยของอาร์เรย์ที่เจาะจง หรือ โดยวางนิพจน์ในวงเล็บ "()" ตัวอย่างเช่น 'permissions(id)' จะแสดงเฉพาะรหัสสิทธิ์สำหรับแต่ละองค์ประกอบใน อาร์เรย์สิทธิ์

  • หากต้องการแสดงผลช่องทั้งหมดในออบเจ็กต์ ให้ใช้เครื่องหมายดอกจันเป็นไวลด์การ์ดในช่อง ทั้งหมด เช่น 'permissions/permissionDetails/*' เลือกทั้งหมด ช่องรายละเอียดสิทธิ์ที่ใช้ได้ต่อสิทธิ์ โปรดทราบว่าการใช้ ไวลด์การ์ดนี้อาจทำให้เกิดผลเสียต่อประสิทธิภาพต่อคำขอ

แสดงตัวอย่าง

คำขอ

ในตัวอย่างนี้ เราระบุพารามิเตอร์เส้นทางรหัสไฟล์และมีหลายช่องเป็นพารามิเตอร์การค้นหาในคำขอ การตอบกลับจะแสดงค่าช่องสำหรับรหัสไฟล์

GET https://www.googleapis.com/drive/v3/files/FILE_ID?fields=name,starred,shared

คำตอบ

{
  "name": "File1",
  "starred": false,
  "shared": true
  }
}

ดึงข้อมูลช่องของทรัพยากรที่ซ้อนกัน

เมื่อช่องหนึ่งอ้างอิงถึงทรัพยากรอื่น คุณสามารถระบุช่องของ ควรดึงข้อมูลทรัพยากรที่ฝัง

เช่น หากต้องการเรียกข้อมูลช่อง role (ทรัพยากรที่ซ้อนกัน) ของ permissions โดยใช้ตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้

  • permissions.get เมื่อใช้ fields=role หรือ fields=*
  • files.get เมื่อใช้ fields=permissions(role) หรือ fields=permissions/role
  • files.get ที่มี fields=permissions เพื่อบ่งบอกเป็นนัยทุกช่องของการฝัง ทรัพยากร
  • changes.list ด้วย fields=changes(file(permissions(role)))

หากต้องการเรียกข้อมูลหลายช่อง ให้ใช้รายการที่คั่นด้วยคอมมา ตัวอย่างเช่น files.list ด้วย fields=files(id,name,createdTime,modifiedTime,size)

แสดงตัวอย่าง

คำขอ

ในตัวอย่างนี้ เราระบุพารามิเตอร์เส้นทางรหัสไฟล์และฟิลด์หลายฟิลด์ รวมถึงบางฟิลด์ของทรัพยากรสิทธิ์ที่ซ้อนกันเป็นพารามิเตอร์การค้นหาในคําขอ การตอบกลับจะแสดงค่าช่องสำหรับรหัสไฟล์

GET https://www.googleapis.com/drive/v3/files/FILE_ID?fields=name,starred,shared,permissions(kind,type,role)

คำตอบ

{
  "name": "File1",
  "starred": false,
  "shared": true,
  "permissions": [
    {
      "kind": "drive#permission",
      "type": "user",
      "role": "owner"
    }
  ]
}