ความแตกต่างของไดรฟ์ที่แชร์กับ API ไดรฟ์ของฉัน

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

คู่มือนี้จะอธิบายความแตกต่างของ API ที่เฉพาะเจาะจงกับไดรฟ์ที่แชร์ในทรัพยากร files และ changes

ทรัพยากรไฟล์

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

  • hasAugmentedPermissions: ระบุว่ามีผู้ใช้ที่ได้รับสิทธิ์เข้าถึงไฟล์นี้โดยตรงหรือไม่
  • capabilities/canAddFolderFromAnotherDrive: ระบุว่าผู้ใช้ปัจจุบันสามารถเพิ่มโฟลเดอร์จากไดรฟ์อื่น (ไดรฟ์ที่แชร์อื่นหรือไดรฟ์ของฉัน) ไปยังโฟลเดอร์นี้ได้หรือไม่
  • capabilities/canDeleteChildren: ระบุว่าผู้ใช้ปัจจุบันสามารถลบรายการย่อยของโฟลเดอร์นี้ได้หรือไม่
  • capabilities/canMoveChildrenOutOfDrive: ระบุว่าผู้ใช้ปัจจุบันสามารถย้ายรายการย่อยของโฟลเดอร์นี้ออกจากไดรฟ์ที่แชร์ได้หรือไม่
  • capabilities/canMoveChildrenWithinDrive: ระบุว่าผู้ใช้ปัจจุบันสามารถย้ายรายการย่อยของโฟลเดอร์นี้ภายในไดรฟ์ที่แชร์ได้หรือไม่
  • capabilities/canMoveItemWithinDrive: ระบุว่าผู้ใช้ปัจจุบันสามารถย้ายรายการในไดรฟ์ที่แชร์นี้ภายในไดรฟ์ที่แชร์ได้หรือไม่
  • capabilities/canReadDrive: ระบุว่าผู้ใช้ปัจจุบันมีสิทธิ์อ่านไดรฟ์ที่แชร์ซึ่งไฟล์นี้อยู่หรือไม่
  • capabilities/canTrashChildren: ระบุว่าผู้ใช้ปัจจุบันสามารถย้ายรายการย่อยของโฟลเดอร์นี้ไปที่ถังขยะได้หรือไม่
  • driveId: รหัสของไดรฟ์ที่แชร์ซึ่งไฟล์อยู่
  • trashingUser: หากมีการย้ายไฟล์ไปที่ถังขยะอย่างชัดแจ้ง ผู้ใช้ที่ย้ายไฟล์ไปที่ถังขยะ
  • trashedTime: เวลาที่ย้ายรายการไปที่ถังขยะ หากคุณใช้ Drive API v2 เวอร์ชันเก่า ช่องนี้จะเรียกว่า trashedDate

ระบบจะไม่ป้อนข้อมูลในช่องต่อไปนี้สำหรับไฟล์ที่อยู่ในไดรฟ์ที่แชร์

  • permissions: ระบบจะไม่แสดงสิทธิ์เป็นส่วนหนึ่งของไฟล์เนื่องจากรายการควบคุมการเข้าถึง (ACL) ของไดรฟ์ที่แชร์อาจมีขนาดใหญ่ ใช้เมธอด permissions.list ซึ่งรองรับการแบ่งหน้าเพื่อแสดงรายการสิทธิ์สำหรับไฟล์ภายในไดรฟ์ที่แชร์หรือโฟลเดอร์ไดรฟ์ที่แชร์
  • owners, ownerNames, ownedByMe: ไดรฟ์ที่แชร์เป็นเจ้าของไฟล์ภายในไดรฟ์ที่แชร์ ไม่ใช่ผู้ใช้แต่ละราย
  • folderColorRgb: คุณจะกำหนดสีให้โฟลเดอร์แต่ละรายการไม่ได้
  • shared: รายการทั้งหมดในไดรฟ์ที่แชร์จะได้รับการแชร์
  • writersCanShare: คุณจะจำกัดการแชร์ตามบทบาทในไดรฟ์ที่แชร์ไม่ได้

ระบบจะตั้งค่าช่องต่อไปนี้เมื่อผู้ใช้ได้รับสิทธิ์เข้าถึงไฟล์ในรายการ

  • sharedWithMeDate
  • sharingUser

ช่องต่อไปนี้ต้องได้รับการพิจารณาเป็นพิเศษเมื่อคุณใช้กับไดรฟ์ที่แชร์

  • parents.isRoot: ช่องนี้จะเป็น "จริง" สำหรับโฟลเดอร์รากของไดรฟ์ของฉันเท่านั้น แต่จะเป็น "เท็จ" สำหรับโฟลเดอร์ระดับบนสุดของไดรฟ์ที่แชร์
  • parents: รายการระดับบนจะไม่ปรากฏในรายการระดับบนหากผู้ใช้ที่ส่งคำขอไม่ใช่สมาชิกของไดรฟ์ที่แชร์และไม่มีสิทธิ์เข้าถึงรายการระดับบน นอกจากนี้ รายการระดับบนต้องมีรายการเดียวเท่านั้นหากไฟล์อยู่ในไดรฟ์ที่แชร์ ยกเว้นโฟลเดอร์ระดับบนสุด

  • capabilities/canRemoveChildren: ใช้ capabilities/canDeleteChildren หรือ capabilities/canTrashChildren

ทรัพยากรการเปลี่ยนแปลง

ช่องใหม่ต่อไปนี้พร้อมใช้งานในทรัพยากร changes สำหรับไดรฟ์ที่แชร์

  • changeType: ประเภทการเปลี่ยนแปลง ค่าที่เป็นไปได้คือ file และ drive
  • driveId: รหัสของไดรฟ์ที่แชร์ที่เชื่อมโยงกับการเปลี่ยนแปลงนี้
  • drive: สถานะที่อัปเดตของไดรฟ์ที่แชร์ จะปรากฏขึ้นหาก changeType คือ drive และผู้ใช้ยังคงเป็นสมาชิกของไดรฟ์ที่แชร์

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