แก้ไขข้อผิดพลาด

Google Drive API จะแสดงข้อมูลข้อผิดพลาด 2 ระดับดังนี้

  • รหัสข้อผิดพลาดของ HTTP และข้อความส่วนหัว
  • ออบเจ็กต์ JSON ในเนื้อหาการตอบกลับพร้อมรายละเอียดเพิ่มเติมที่จะช่วยให้คุณระบุวิธีจัดการกับข้อผิดพลาดได้

แอป Google ไดรฟ์ควรดักจับและจัดการกับข้อผิดพลาดทั้งหมดที่อาจพบเมื่อใช้ REST API คู่มือนี้จะแสดงวิธีการแก้ไขข้อผิดพลาดใน Drive API ที่เฉพาะเจาะจง

สรุปรหัสสถานะ HTTP

รหัสข้อผิดพลาด คำอธิบาย
200 - OK คำขอประสบความสำเร็จ (เป็นการตอบสนองแบบมาตรฐานสำหรับคำขอ HTTP ที่ประสบความสำเร็จ)
400 - Bad Request ไม่สามารถดำเนินการตามคำขอเนื่องจากเกิดข้อผิดพลาดของไคลเอ็นต์ในคำขอ
401 - Unauthorized คำขอมีข้อมูลเข้าสู่ระบบที่ไม่ถูกต้อง
403 - Forbidden ได้รับและทำความเข้าใจคำขอแล้ว แต่ผู้ใช้ไม่มีสิทธิ์ดำเนินการตามคำขอ
404 - Not Found ไม่พบหน้าที่ขอ
429 - Too Many Requests มีคำขอไปยัง API มากเกินไป
500, 502, 503, 504 - Server Errors เกิดข้อผิดพลาดที่ไม่คาดคิดขณะประมวลผลคำขอ

ข้อผิดพลาด 400

ข้อผิดพลาดเหล่านี้หมายความว่าคำขอไม่ได้รับการยอมรับ ซึ่งมักเกิดจากการขาดพารามิเตอร์ที่จำเป็น

badRequest

ข้อผิดพลาดนี้อาจเกิดจากปัญหาอย่างใดอย่างหนึ่งต่อไปนี้ในโค้ด

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

ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "code": 400,
    "errors": [
      {
        "domain": "global",
        "location": "orderBy",
        "locationType": "parameter",
        "message": "Sorting is not supported for queries with fullText terms. Results are always in descending relevance order.",
        "reason": "badRequest"
      }
    ],
    "message": "Sorting is not supported for queries with fullText terms. Results are always in descending relevance order."
  }
}

หากต้องการแก้ไขข้อผิดพลาดนี้ ให้ตรวจสอบช่อง message และปรับเปลี่ยนโค้ดให้สอดคล้องกัน

invalidSharingRequest

ข้อผิดพลาดนี้เกิดขึ้นได้จากหลายสาเหตุ หากต้องการทราบสาเหตุ ให้ประเมินช่อง reason ของ JSON ที่แสดงผล ข้อผิดพลาดนี้มักเกิดขึ้นเนื่องจากสาเหตุต่อไปนี้

  • แชร์สำเร็จ แต่ไม่ได้ส่งอีเมลการแจ้งเตือนอย่างถูกต้อง
  • ไม่อนุญาตให้ผู้ใช้รายนี้ทำการเปลี่ยนแปลงรายการควบคุมการเข้าถึง (ACL)

ช่อง message จะระบุข้อผิดพลาดจริง

แชร์สำเร็จ แต่ไม่ได้ส่งอีเมลการแจ้งเตือนอย่างถูกต้อง

ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "invalidSharingRequest",
        "message": "Bad Request. User message: \"Sorry, the items were successfully shared but emails could not be sent to email@domain.com.\""
      }
    ],
    "code": 400,
    "message": "Bad Request"
  }
}

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

ไม่อนุญาตให้ผู้ใช้รายนี้เปลี่ยนแปลง ACL

ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "invalidSharingRequest",
        "message": "Bad Request. User message: \"ACL change not allowed.\""
      }
    ],
    "code": 400,
    "message": "Bad Request"
  }
}

ในการแก้ไขข้อผิดพลาดนี้ ให้ตรวจสอบการตั้งค่าการแชร์ ของโดเมน Google Workspace ที่เป็นเจ้าของไฟล์ การตั้งค่าดังกล่าวอาจไม่อนุญาตให้แชร์ภายนอกโดเมนหรืออาจไม่อนุญาตให้แชร์ไดรฟ์ที่แชร์

ข้อผิดพลาด 401

ข้อผิดพลาดเหล่านี้หมายความว่าคำขอไม่มีโทเค็นเพื่อการเข้าถึงที่ถูกต้อง

authError

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

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "authError",
        "message": "Invalid Credentials",
        "locationType": "header",
        "location": "Authorization",
      }
    ],
    "code": 401,
    "message": "Invalid Credentials"
  }
}

หากต้องการแก้ไขข้อผิดพลาดนี้ ให้รีเฟรชโทเค็นเพื่อการเข้าถึงโดยใช้โทเค็นการรีเฟรชที่ใช้ได้นาน หากการดำเนินการนี้ไม่สำเร็จ ให้นำทางผู้ใช้ผ่านขั้นตอน OAuth ตามที่อธิบายไว้ในหัวข้อเลือกขอบเขต API ของ Google Drive

ข้อผิดพลาด 403

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

โปรดดูข้อมูลเกี่ยวกับขีดจำกัดของ Drive API ได้ที่ขีดจำกัดการใช้งาน โปรดดูข้อมูลเกี่ยวกับขีดจำกัดของโฟลเดอร์ไดรฟ์ที่หัวข้อขีดจำกัดของไฟล์และโฟลเดอร์

activeItemCreationLimitExceeded

ข้อผิดพลาด activeItemCreationLimitExceeded เกิดขึ้นเมื่อรายการที่สร้างเกินขีดจำกัดสำหรับบัญชี ผู้ใช้แต่ละรายสามารถสร้างรายการ ได้สูงสุด 500 ล้านรายการโดยบัญชี ดูข้อมูลเพิ่มเติมได้ที่ขีดจำกัดรายการผู้ใช้

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "activeItemCreationLimitExceeded",
    "message": "This account has exceeded the creation limit of 500 million items. To create more items, permanently delete some items."
   }
  ],
  "code": 403,
  "message": "This account has exceeded the creation limit of 500 million items. To create more items, permanently delete some items."
 }
}

วิธีแก้ไขข้อผิดพลาดนี้

  1. แจ้งให้ผู้ใช้ทราบว่าไดรฟ์ป้องกันไม่ให้บัญชีสร้างรายการมากกว่า 500 ล้านรายการ

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

appNotAuthorizedToFile

ข้อผิดพลาดนี้เกิดขึ้นเมื่อแอปของคุณไม่ได้อยู่ใน ACL ของไฟล์ ข้อผิดพลาดนี้ป้องกันไม่ให้ผู้ใช้เปิดไฟล์ด้วยแอปของคุณ ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "appNotAuthorizedToFile",
        "message": "The user has not granted the app {appId} {verb} access to the file {fileId}."
      }
    ],
    "code": 403,
    "message": "The user has not granted the app {appId} {verb} access to the file {fileId}."
  }
}

โปรดลองวิธีต่อไปนี้เพื่อแก้ไข

cannotModifyInheritedTeamDrivePermission

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

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "cannotModifyInheritedTeamDrivePermission",
        "message": "Cannot update or delete an inherited permission on a shared drive item."
      }
    ],
    "code": 403,
    "message": "Cannot update or delete an inherited permission on a shared drive item."
  }
}

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

dailyLimitExceeded

ข้อผิดพลาดนี้เกิดขึ้นเมื่อใช้ API ถึงขีดจำกัดสำหรับโปรเจ็กต์แล้ว ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "usageLimits",
        "reason": "dailyLimitExceeded",
        "message": "Daily Limit Exceeded"
      }
    ],
    "code": 403,
    "message": "Daily Limit Exceeded"
  }
}

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

domainPolicy

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

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "domainPolicy",
        "message": "The domain administrators have disabled Drive apps."
      }
    ],
    "code": 403,
    "message": "The domain administrators have disabled Drive apps."
  }
}

วิธีแก้ไขข้อผิดพลาดนี้

  1. แจ้งให้ผู้ใช้ทราบว่าโดเมนไม่อนุญาตให้แอปของคุณเข้าถึงไฟล์ในไดรฟ์
  2. แจ้งให้ผู้ใช้ติดต่อผู้ดูแลระบบโดเมนเพื่อขอสิทธิ์เข้าถึงแอปของคุณ

fileOwnerNotMemberOfTeamDrive

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

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "fileOwnerNotMemberOfTeamDrive",
        "message": "Cannot move a file into a shared drive as a writer when the owner of the file is not a member of that shared drive."
      }
    ],
    "code": 403,
    "message": "Cannot move a file into a shared drive as a writer when the owner of the file is not a member of that shared drive."
  }
}

วิธีแก้ไขข้อผิดพลาดนี้

  1. เพิ่มสมาชิกในไดรฟ์ที่แชร์กับ role=owner โปรดดูข้อมูลเพิ่มเติมที่หัวข้อแชร์ไฟล์ โฟลเดอร์ และไดรฟ์

  2. เพิ่มไฟล์ในไดรฟ์ที่แชร์ ดูข้อมูลเพิ่มเติมได้ที่สร้างและเติมข้อมูลโฟลเดอร์

fileWriterTeamDriveMoveInDisabled

ข้อผิดพลาดนี้เกิดขึ้นเมื่อผู้ดูแลระบบโดเมนไม่อนุญาตให้ผู้ใช้ที่มี role=writer ย้ายรายการไปยังไดรฟ์ที่แชร์ ผู้ใช้ที่พยายามย้ายรายการจะมีสิทธิ์น้อยกว่าที่อนุญาตในไดรฟ์ที่แชร์ปลายทาง ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "fileWriterTeamDriveMoveInDisabled",
        "message": "The domain administrator has not allowed writers to move items into a shared drive."
      }
    ],
    "code": 403,
    "message": "The domain administrator has not allowed writers to move items into a shared drive."
  }
}

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

insufficientFilePermissions

ข้อผิดพลาดนี้เกิดขึ้นเมื่อผู้ใช้ไม่มีสิทธิ์เขียนไฟล์ และแอปของคุณกำลังพยายามแก้ไขไฟล์ ตัวอย่าง JSON ต่อไปนี้เป็นการแสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "insufficientFilePermissions",
        "message": "The user does not have sufficient permissions for file {fileId}."
      }
    ],
    "code": 403,
    "message": "The user does not have sufficient permissions for file {fileId}."
  }
}

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

myDriveHierarchyDepthLimitExceeded

ข้อผิดพลาด myDriveHierarchyDepthLimitExceeded เกิดขึ้นเมื่อระดับโฟลเดอร์ที่ซ้อนกันเกินขีดจำกัด ไดรฟ์ของฉันของผู้ใช้จะมีโฟลเดอร์ที่ซ้อนกันได้ไม่เกิน 100 ระดับ ดูข้อมูลเพิ่มเติมได้ที่ขีดจำกัดความลึกของโฟลเดอร์

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "myDriveHierarchyDepthLimitExceeded",
    "message": "Your My Drive can't contain more than 100 levels of folders. For details, see https://developers.google.com/drive/api/guides/handle-errors#nested-folder-levels."
   }
  ],
  "code": 403,
  "message": "Your My Drive can't contain more than 100 levels of folders. For details, see https://developers.google.com/drive/api/guides/handle-errors#nested-folder-levels."
 }
}

วิธีแก้ไขข้อผิดพลาดนี้

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

numChildrenInNonRootLimitExceeded

ข้อผิดพลาดนี้เกิดขึ้นเมื่อโฟลเดอร์ย่อย (โฟลเดอร์ ไฟล์ และทางลัด) มีจำนวนเกินขีดจำกัดสูงสุด โฟลเดอร์ ไฟล์ และทางลัดในโฟลเดอร์โดยตรงจะมีขีดจำกัดอยู่ที่ 500,000 รายการ รายการที่ซ้อนอยู่ในโฟลเดอร์ย่อยจะไม่นับรวมในขีดจำกัด 500,000 รายการนี้ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับขีดจำกัดของโฟลเดอร์ไดรฟ์ โปรดดูที่ขีดจำกัดของโฟลเดอร์ใน Google ไดรฟ์

ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "numChildrenInNonRootLimitExceeded",
    "message": "The limit for this folder's number of children (files and folders) has been exceeded."
   }
  ],
  "code": 403,
  "message": "The limit for this folder's number of children (files and folders) has been exceeded."
 }
}

โปรดลองวิธีต่อไปนี้เพื่อแก้ไข

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

rateLimitExceeded

ข้อผิดพลาดนี้เกิดขึ้นเมื่อถึงขีดจำกัดอัตราของโปรเจ็กต์ ขีดจำกัดนี้จะแตกต่างกันไปตามประเภทคำขอ ตัวอย่าง JSON ต่อไปนี้เป็นการแสดงถึงข้อผิดพลาดนี้

{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "message": "Rate Limit Exceeded",
    "reason": "rateLimitExceeded",
   }
  ],
  "code": 403,
  "message": "Rate Limit Exceeded"
 }
}

โปรดลองวิธีต่อไปนี้เพื่อแก้ไข

sharingRateLimitExceeded

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

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "message": "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: filename",
    "reason": "sharingRateLimitExceeded",
   }
  ],
  "code": 403,
  "message": "Rate Limit Exceeded"
 }
}

วิธีแก้ไขข้อผิดพลาดนี้

  1. อย่าส่งอีเมลเมื่อแชร์ไฟล์จำนวนมาก
  2. หากผู้ใช้รายหนึ่งส่งคำขอจำนวนมากในนามของผู้ใช้บัญชี Google Workspace หลายราย ให้พิจารณาบัญชีบริการที่มีการมอบสิทธิ์ทั่วทั้งโดเมนโดยใช้พารามิเตอร์ quotaUser

storageQuotaExceeded

ข้อผิดพลาดนี้เกิดขึ้นเมื่อผู้ใช้ใช้พื้นที่เก็บข้อมูลถึงขีดจำกัด ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "message": "The user's Drive storage quota has been exceeded.",
    "reason": "storageQuotaExceeded",
   }
  ],
  "code": 403,
  "message": "The user's Drive storage quota has been exceeded."
 }
}

วิธีแก้ไขข้อผิดพลาดนี้

  1. ตรวจสอบขีดจำกัดพื้นที่เก็บข้อมูลของบัญชีไดรฟ์ โปรดดูข้อมูลเพิ่มเติมที่พื้นที่เก็บข้อมูลของ Google Workspace และขีดจำกัดการอัปโหลด

  2. จัดการไฟล์ในพื้นที่เก็บข้อมูล Google ไดรฟ์

  3. ซื้อพื้นที่เก็บข้อมูล Google เพิ่ม

teamDriveFileLimitExceeded

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

ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "teamDriveFileLimitExceeded",
        "message": "The file limit for this shared drive has been exceeded."
      }
    ],
    "code": 403,
    "message": "The file limit for this shared drive has been exceeded."
  }
}

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

teamDriveHierarchyTooDeep

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

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "teamDriveHierarchyTooDeep",
    "message": "The shared drive hierarchy depth will exceed the limit."
   }
  ],
  "code": 403,
  "message": "The shared drive hierarchy depth will exceed the limit."
 }
}

วิธีแก้ไขข้อผิดพลาดนี้

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

teamDriveMembershipRequired

ข้อผิดพลาดนี้เกิดขึ้นเมื่อผู้ใช้พยายามเข้าถึงไดรฟ์ที่แชร์ซึ่งไม่ได้เป็นสมาชิก ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "teamDriveMembershipRequired",
        "message": "The attempted action requires shared drive membership."
      }
    ],
    "code": 403,
    "message": "The attempted action requires shared drive membership."
  }
}

โปรดลองวิธีต่อไปนี้เพื่อแก้ไข

  1. ขอให้ผู้จัดการไดรฟ์ที่แชร์เพิ่มคุณโดยมีสิทธิ์ที่เหมาะสมสำหรับการดำเนินการที่คุณต้องทำ

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

teamDrivesFolderMoveInNotSupported

ข้อผิดพลาดนี้เกิดขึ้นเมื่อผู้ใช้พยายามย้ายโฟลเดอร์จากไดรฟ์ของฉันไปยังไดรฟ์ที่แชร์ ตัวอย่าง JSON ต่อไปนี้เป็นการแสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "teamDrivesFolderMoveInNotSupported",
        "message": "Moving folders into shared drives is not supported."
      }
    ],
    "code": 403,
    "message": "Moving folders into shared drives is not supported."
  }
}

โปรดลองวิธีต่อไปนี้เพื่อแก้ไข

  • คุณสามารถย้ายแต่ละรายการจากโฟลเดอร์ไปยังไดรฟ์ที่แชร์โดยใช้ Drive API ตั้งค่าพารามิเตอร์ supportsAllDrives=true เพื่อแสดงการรองรับทั้งไดรฟ์ของฉันและไดรฟ์ที่แชร์

  • หากต้องการย้ายโฟลเดอร์ไปยังไดรฟ์ที่แชร์ ให้ใช้ UI ของไดรฟ์ โปรดดูข้อมูลเพิ่มเติมที่หัวข้อย้ายโฟลเดอร์ไปยังไดรฟ์ที่แชร์ในฐานะผู้ดูแลระบบ

teamDrivesParentLimit

ข้อผิดพลาดนี้เกิดขึ้นเมื่อผู้ใช้พยายามเพิ่มระดับบนสุดมากกว่า 1 รายการไปยังรายการในไดรฟ์ที่แชร์ ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "teamDrivesParentLimit",
        "message": "A shared drive item must have exactly one parent."
      }
    ],
    "code": 403,
    "message": "A shared drive item must have exactly one parent."
  }
}

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

UrlLeaseLimitExceeded

ข้อผิดพลาดนี้เกิดขึ้นเมื่อพยายามบันทึกข้อมูลเกมของ Google Play ผ่านแอปพลิเคชันของคุณ ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "reason": "UrlLeaseLimitExceeded",
    "message": "Too many pending uploads for this snapshot. Please finish or cancel some before creating more."
   }
  ],
  "code": 403,
  "message": "Too many pending uploads for this snapshot. Please finish or cancel some before creating more."
 }
}

หากต้องการแก้ไขข้อผิดพลาดนี้ ให้ดำเนินการหรือยกเลิกการอัปโหลดสแนปชอตทั้งหมดก่อนสร้างเพิ่มเติม

userRateLimitExceeded

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

{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "reason": "userRateLimitExceeded",
    "message": "User Rate Limit Exceeded"
   }
  ],
  "code": 403,
  "message": "User Rate Limit Exceeded"
 }
}

โปรดลองวิธีต่อไปนี้เพื่อแก้ไข

  • เพิ่มโควต้าต่อผู้ใช้ในโปรเจ็กต์ Google Cloud หากต้องการข้อมูลเพิ่มเติม โปรดขอเพิ่มโควต้า

โปรดดูข้อมูลเกี่ยวกับขีดจำกัดของ Drive API ได้ที่ขีดจำกัดการใช้งาน

ข้อผิดพลาด 404

ข้อผิดพลาดเหล่านี้หมายความว่าทรัพยากรที่ขอเข้าถึงไม่ได้หรือไม่มีอยู่

notFound

ข้อผิดพลาดนี้เกิดขึ้นเมื่อผู้ใช้ไม่มีสิทธิ์ในการอ่านไฟล์ หรือไฟล์ไม่มีอยู่ ตัวอย่าง JSON ต่อไปนี้แสดงถึงข้อผิดพลาดนี้

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "notFound",
        "message": "File not found {fileId}"
      }
    ],
    "code": 404,
    "message": "File not found: {fileId}"
  }
}

วิธีแก้ไขข้อผิดพลาดนี้

  1. หากไฟล์อยู่ในไดรฟ์ที่แชร์และคุณใช้เมธอด files.get อยู่ โปรดตรวจสอบว่าได้ตั้งค่าพารามิเตอร์การค้นหา supportsAllDrives เป็น true
  2. แจ้งให้ผู้ใช้ทราบว่าพวกเขาไม่มีสิทธิ์อ่านไฟล์หรือไม่มีไฟล์อยู่
  3. แนะนำให้ผู้ใช้ติดต่อเจ้าของไฟล์และขอสิทธิ์ในการเข้าถึงไฟล์

ข้อผิดพลาด 429

ข้อผิดพลาดเหล่านี้หมายความว่ามีการส่งคำขอไปยัง API มากเกินไปเร็วเกินไป

rateLimitExceeded

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

{
  "error": {
    "errors": [
      {
        "domain": "usageLimits",
        "reason": "rateLimitExceeded",
        "message": "Rate Limit Exceeded"
      }
    ],
    "code": 429,
    "message": "Rate Limit Exceeded"s
  }
}

หากต้องการแก้ไขข้อผิดพลาดนี้ ให้ใช้ Exponential Backoff เพื่อลองส่งคำขออีกครั้ง

ข้อผิดพลาด 500, 502, 503, 504

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

รายการข้อผิดพลาด 5xx มีดังนี้

  • 500 ข้อผิดพลาดของแบ็กเอนด์
  • 502 เกตเวย์ไม่ถูกต้อง
  • 503 ไม่พร้อมให้บริการ
  • 504 เกตเวย์หมดเวลา

หากต้องการแก้ไขข้อผิดพลาดนี้ ให้ใช้ Exponential Backoff เพื่อลองส่งคำขออีกครั้ง