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

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

  • รหัสข้อผิดพลาดของ 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 ที่แสดงผล ข้อผิดพลาดนี้เกิดขึ้นบ่อยที่สุดเนื่องจากสาเหตุต่อไปนี้

  • แชร์เรียบร้อยแล้ว แต่ระบบส่งอีเมลแจ้งเตือนไม่ถูกต้อง
  • ไม่อนุญาตให้ผู้ใช้รายนี้เปลี่ยนแปลง Access Control List (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 ไดรฟ์

ข้อผิดพลาด 403

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

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

activeItemCreationLimitExceeded

ข้อผิดพลาด activeItemCreationLimitExceeded จะเกิดขึ้นเมื่อรายการที่สร้างต่อบัญชีมีจำนวนเกินขีดจำกัด ผู้ใช้แต่ละคนจะมีรายการ ที่สร้างจาก 1 บัญชีได้มากถึง 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}."
  }
}

ลองทำตามขั้นตอนต่อไปนี้เพื่อแก้ไขข้อผิดพลาด

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

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

ข้อผิดพลาดนี้เกิดขึ้นเมื่อผู้ใช้พยายามมีรายการเกินขีดจำกัดที่เข้มงวดในไดรฟ์ที่แชร์ แต่ละโฟลเดอร์ในไดรฟ์ที่แชร์ของผู้ใช้จะมีขีดจำกัดอยู่ที่ 400,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."
  }
}

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

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."
  }
}

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

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. แจ้งให้ผู้ใช้ทราบว่าพวกเขาไม่มีสิทธิ์อ่านไฟล์ หรือไม่มีไฟล์อยู่
  2. แจ้งให้ผู้ใช้ติดต่อเจ้าของไฟล์และขอสิทธิ์ในการเข้าถึงไฟล์

ข้อผิดพลาด 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 เพื่อลองส่งคำขออีกครั้ง