API Google Drive trả về hai cấp độ thông tin lỗi:
- Mã lỗi HTTP và thông báo tiêu đề.
- Đối tượng JSON trong nội dung phản hồi với các thông tin chi tiết bổ sung có thể giúp bạn xác định cách xử lý lỗi.
Ứng dụng Google Drive phải phát hiện và xử lý mọi lỗi có thể gặp phải khi sử dụng API REST. Hướng dẫn này cung cấp hướng dẫn về cách giải quyết các lỗi cụ thể của API Drive.
Tóm tắt mã trạng thái HTTP
Mã lỗi | Mô tả |
---|---|
200 - OK |
Yêu cầu thành công (đây là phản hồi tiêu chuẩn cho các yêu cầu HTTP thành công). |
400 - Bad Request |
Không thể thực hiện yêu cầu do lỗi ứng dụng trong yêu cầu. |
401 - Unauthorized |
Yêu cầu chứa thông tin xác thực không hợp lệ. |
403 - Forbidden |
Yêu cầu đã được nhận và hiểu rõ, nhưng người dùng không có quyền thực hiện yêu cầu. |
404 - Not Found |
Không tìm thấy trang đã yêu cầu. |
429 - Too Many Requests |
Quá nhiều yêu cầu đến API. |
500, 502, 503, 504 - Server Errors |
Đã xảy ra lỗi ngoài dự kiến trong khi xử lý yêu cầu. |
Lỗi 400
Những lỗi này có nghĩa là yêu cầu không được chấp nhận, thường là do thiếu thông số bắt buộc.
badRequest
Lỗi này có thể xảy ra do một trong những vấn đề sau trong mã của bạn:
- Bạn chưa cung cấp một trường hoặc tham số bắt buộc.
- Giá trị đã cung cấp hoặc tổ hợp các trường đã cung cấp là không hợp lệ.
- Bạn đã cố thêm tệp gốc trùng lặp vào một tệp trên Drive.
- Bạn đã cố gắng thêm một thành phần mẹ sẽ tạo một chu kỳ trong biểu đồ thư mục.
Mẫu JSON sau đây thể hiện lỗi này:
{
"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."
}
}
Để khắc phục lỗi này, hãy kiểm tra trường message
và điều chỉnh mã cho phù hợp.
invalidSharingRequest
Lỗi này xảy ra vì một số lý do. Để xác định nguyên nhân, hãy đánh giá trường reason
của JSON được trả về. Lỗi này thường xảy ra nhất do:
- Bạn đã chia sẻ thành công nhưng email thông báo không được gửi chính xác.
- Thay đổi Danh sách kiểm soát truy cập (ACL) không được phép cho người dùng này.
Trường message
cho biết lỗi thực tế.
Đã chia sẻ thành công nhưng email thông báo không được gửi chính xác
Mẫu JSON sau đây thể hiện lỗi này:
{
"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"
}
}
Để khắc phục lỗi này, hãy thông báo cho người dùng (người chia sẻ) rằng họ không thể chia sẻ vì không gửi được email thông báo đến địa chỉ email đích. Người dùng phải đảm bảo rằng họ có địa chỉ email chính xác và địa chỉ đó có thể nhận email.
Người dùng này không được phép thay đổi ACL
Mẫu JSON sau đây thể hiện lỗi này:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalidSharingRequest",
"message": "Bad Request. User message: \"ACL change not allowed.\""
}
],
"code": 400,
"message": "Bad Request"
}
}
Để khắc phục lỗi này, hãy kiểm tra chế độ cài đặt chia sẻ của miền Google Workspace mà tệp đó thuộc về. Chế độ cài đặt có thể cấm chia sẻ ra bên ngoài miền hoặc không cho phép chia sẻ bộ nhớ dùng chung.
Lỗi 401
Những lỗi này có nghĩa là yêu cầu không chứa mã truy cập hợp lệ.
authError
Lỗi này xảy ra khi mã thông báo truy cập mà bạn đang sử dụng đã hết hạn hoặc không hợp lệ. Lỗi này cũng có thể xảy ra do thiếu quyền cho các phạm vi được yêu cầu. Mẫu JSON sau đây thể hiện lỗi này:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "authError",
"message": "Invalid Credentials",
"locationType": "header",
"location": "Authorization",
}
],
"code": 401,
"message": "Invalid Credentials"
}
}
Để khắc phục lỗi này, hãy làm mới mã thông báo truy cập bằng mã thông báo làm mới có thời hạn dài. Nếu không thành công, hãy hướng dẫn người dùng thực hiện quy trình OAuth như mô tả trong phần Chọn phạm vi API Google Drive.
fileNotDownloadable
Lỗi này xảy ra khi bạn cố gắng sử dụng phương thức revisions.get
với tham số URL alt=media
trên tài liệu Google Workspace. Mẫu JSON sau đây thể hiện lỗi này:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "fileNotDownloadable",
"message": "Only files with binary content can be downloaded. Use Export with Docs Editors files."
}
],
"code": 403,
"message": "Only files with binary content can be downloaded. Use Export with Docs Editors files."
}
}
Để khắc phục lỗi này, hãy thử một trong những cách sau:
- Xoá tham số URL
alt=media
nếu bạn muốn xem siêu dữ liệu của một bản sửa đổi cụ thể, chẳng hạn như mimetype. - Sử dụng phương thức
files.export
để xuất nội dung tài liệu Google Workspace ở định dạng byte. Để biết thêm thông tin, hãy xem bài viết Xuất nội dung tài liệu trên Google Workspace.
Lỗi 403
Các lỗi này có nghĩa là bạn đã vượt quá giới hạn sử dụng hoặc người dùng không có quyền chính xác. Để xác định nguyên nhân, hãy đánh giá trường reason
của JSON được trả về.
Để biết thông tin về các hạn mức của API Drive, hãy tham khảo phần Hạn mức sử dụng. Để biết thông tin về giới hạn thư mục trên Drive, hãy tham khảo bài viết Giới hạn về tệp và thư mục.
activeItemCreationLimitExceeded
Lỗi activeItemCreationLimitExceeded
xảy ra khi bạn vượt quá hạn mức về số lượng mục được tạo cho mỗi tài khoản. Mỗi người dùng có thể có tối đa 500 triệu mục do một tài khoản tạo. Để biết thêm thông tin, hãy xem phần Giới hạn mục của người dùng.
{
"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."
}
}
Cách khắc phục lỗi này:
Thông báo cho người dùng rằng Drive không cho phép tài khoản tạo nhiều hơn 500 triệu mục.
Nếu người dùng phải tạo các mục trong chính tài khoản này, hãy hướng dẫn họ xoá vĩnh viễn một số đối tượng. Nếu không, họ có thể sử dụng một tài khoản khác đã đáp ứng yêu cầu.
appNotAuthorizedToFile
Lỗi này xảy ra khi ứng dụng của bạn không có trên Danh sách kiểm soát quyền truy cập (ACL) cho tệp. Lỗi này ngăn người dùng mở tệp bằng ứng dụng của bạn. Mẫu JSON sau đây là bản trình bày của lỗi này:
{
"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}."
}
}
Để khắc phục lỗi này, hãy thử một trong những cách sau:
- Mở bộ chọn Google Drive và nhắc người dùng mở tệp.
- Hướng dẫn người dùng mở tệp bằng trình đơn theo bối cảnh Mở bằng trong giao diện người dùng của ứng dụng Drive.
- Hãy dùng phương thức
files.get
để kiểm tra trườngisAppAuthorized
trên tài nguyênfiles
nhằm xác minh rằng ứng dụng của bạn đã tạo hoặc mở tệp.
cannotModifyInheritedTeamDrivePermission
Lỗi này xảy ra khi người dùng cố gắng sửa đổi các quyền đã kế thừa của một mục trong bộ nhớ dùng chung. Bạn không thể xoá các quyền được kế thừa khỏi một mục trong bộ nhớ dùng chung. Mẫu JSON sau đây thể hiện lỗi này:
{
"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."
}
}
Để khắc phục lỗi này, người dùng phải điều chỉnh các quyền trên mục mẹ trực tiếp hoặc gián tiếp mà các quyền đó được kế thừa. Để biết thêm thông tin, hãy xem phần Truyền quyền. Bạn cũng có thể truy xuất tài nguyên permissions.permissionDetails
để xem các quyền trên mục bộ nhớ dùng chung này có được kế thừa hay áp dụng trực tiếp hay không.
dailyLimitExceeded
Lỗi này xảy ra khi bạn đạt đến hạn mức API cho dự án của mình. Mẫu JSON sau đây thể hiện lỗi này:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "dailyLimitExceeded",
"message": "Daily Limit Exceeded"
}
],
"code": 403,
"message": "Daily Limit Exceeded"
}
}
Lỗi này xuất hiện khi chủ sở hữu ứng dụng đã đặt hạn mức hạn mức để giới hạn mức sử dụng một tài nguyên cụ thể. Để khắc phục lỗi này, hãy xoá mọi giới hạn sử dụng cho hạn mức "Truy vấn mỗi ngày".
domainPolicy
Lỗi này xảy ra khi chính sách áp dụng cho miền của người dùng không cho phép ứng dụng của bạn truy cập vào Drive. Mẫu JSON sau đây minh hoạ lỗi này:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "domainPolicy",
"message": "The domain administrators have disabled Drive apps."
}
],
"code": 403,
"message": "The domain administrators have disabled Drive apps."
}
}
Cách khắc phục lỗi này:
- Thông báo cho người dùng rằng miền không cho phép ứng dụng của bạn truy cập vào các tệp trong Drive.
- Hướng dẫn người dùng liên hệ với quản trị viên miền để yêu cầu quyền truy cập cho ứng dụng của bạn.
fileOwnerNotMemberOfTeamDrive
Lỗi này xảy ra khi bạn cố gắng di chuyển một tệp vào bộ nhớ dùng chung và chủ sở hữu tệp không phải là thành viên. Mẫu JSON sau đây thể hiện lỗi này:
{
"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."
}
}
Cách khắc phục lỗi này:
Thêm thành viên vào bộ nhớ dùng chung bằng
role=owner
. Để biết thêm thông tin, hãy xem bài viết Chia sẻ tệp, thư mục và ổ đĩa.Thêm tệp vào bộ nhớ dùng chung. Để biết thêm thông tin, hãy xem phần Tạo và điền thư mục.
fileWriterTeamDriveMoveInDisabled
Lỗi này xảy ra khi quản trị viên miền chưa cho phép người dùng có role=writer
di chuyển các mục vào bộ nhớ dùng chung. Người dùng đang cố di chuyển các mục có ít quyền hơn mức được phép trên bộ nhớ dùng chung đích. Mẫu JSON sau đây thể hiện lỗi này:
{
"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."
}
}
Để khắc phục lỗi này, hãy sử dụng cùng một tài khoản người dùng quản trị trên cả ổ đĩa dùng chung nguồn và đích.
insufficientFilePermissions
Lỗi này xảy ra khi người dùng không có quyền ghi vào tệp và ứng dụng của bạn đang cố gắng sửa đổi tệp đó. Mẫu JSON sau đây là nội dung trình bày lỗi này:
{
"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}."
}
}
Để khắc phục lỗi này, hãy hướng dẫn người dùng liên hệ với chủ sở hữu tệp và yêu cầu quyền chỉnh sửa. Bạn cũng có thể kiểm tra cấp truy cập của người dùng trong siêu dữ liệu được truy xuất bằng phương thức files.get
và hiển thị giao diện người dùng chỉ có thể đọc khi thiếu quyền.
myDriveHierarchyDepthLimitExceeded
Lỗi myDriveHierarchyDepthLimitExceeded
xảy ra khi vượt quá giới hạn số lượng cấp thư mục lồng nhau. Phần Drive của tôi của người dùng không thể chứa nhiều hơn 100 cấp thư mục được lồng. Để biết thêm thông tin, hãy xem phần Giới hạn chiều sâu của thư mục.
{
"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."
}
}
Cách khắc phục lỗi này:
- Thông báo cho người dùng rằng Drive không cho phép đặt các thư mục vào sâu hơn 100 cấp.
- Nếu người dùng phải tạo một thư mục lồng khác, hãy hướng dẫn họ sắp xếp lại thư mục mẹ dự kiến sao cho có ít hơn 100 cấp độ hoặc sử dụng một thư mục mẹ khác đáp ứng yêu cầu.
numChildrenInNonRootLimitExceeded
Lỗi này xảy ra khi bạn vượt quá giới hạn về số lượng thư mục con (thư mục, tệp và lối tắt) của một thư mục. Có giới hạn 500.000 mục đối với thư mục, tệp và lối tắt trực tiếp trong một thư mục. Các mục được lồng trong thư mục con sẽ không được tính vào giới hạn 500.000 mục này. Để biết thêm thông tin về giới hạn thư mục trên Drive, hãy tham khảo bài viết Giới hạn thư mục trong Google Drive.
Mẫu JSON sau đây thể hiện lỗi này:
{
"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."
}
}
Để khắc phục lỗi này, hãy thử một trong những cách sau:
- Thông báo cho người dùng rằng Drive ngăn các thư mục có nhiều hơn 500.000 mục.
- Nếu người dùng phải thêm nhiều mục khác vào thư mục đầy đủ, hãy hướng dẫn họ sắp xếp lại thư mục để chứa ít hơn 500.000 mục hoặc sử dụng một thư mục tương tự đã chứa ít mục hơn.
rateLimitExceeded
Lỗi này xảy ra khi đã đạt đến giới hạn tốc độ của dự án. Giới hạn này thay đổi tuỳ thuộc vào loại yêu cầu. Mẫu JSON sau đây là nội dung trình bày lỗi này:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"message": "Rate Limit Exceeded",
"reason": "rateLimitExceeded",
}
],
"code": 403,
"message": "Rate Limit Exceeded"
}
}
Để khắc phục lỗi này, hãy thử một trong những cách sau:
- Tăng hạn mức trên mỗi người dùng trong dự án trên Google Cloud. Để biết thêm thông tin, hãy yêu cầu tăng hạn mức.
- Yêu cầu hàng loạt để gói nhiều lệnh gọi API vào một yêu cầu HTTP.
- Sử dụng thời gian đợi luỹ thừa để thử lại yêu cầu.
sharingRateLimitExceeded
Lỗi này xảy ra khi người dùng đạt đến giới hạn chia sẻ và thường liên quan đến giới hạn email. Mẫu JSON sau đây thể hiện lỗi này:
{
"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"
}
}
Cách khắc phục lỗi này:
- Không gửi email khi chia sẻ một lượng lớn tệp.
- Nếu một người dùng gửi nhiều yêu cầu thay mặt cho nhiều người dùng của một tài khoản Google Workspace, hãy cân nhắc sử dụng một tài khoản dịch vụ có tính năng uỷ quyền trên toàn miền bằng cách sử dụng tham số
quotaUser
.
storageQuotaExceeded
Lỗi này xảy ra khi người dùng đạt đến hạn mức bộ nhớ. Mẫu JSON sau đây thể hiện lỗi này:
{
"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."
}
}
Cách khắc phục lỗi này:
Xem hạn mức bộ nhớ của tài khoản Drive. Để biết thêm thông tin, hãy tham khảo bài viết Giới hạn về bộ nhớ và giới hạn tải lên của Google Workspace.
teamDriveFileLimitExceeded
Lỗi này xảy ra khi người dùng cố gắng vượt quá hạn mức nghiêm ngặt về số mục trên một ổ đĩa dùng chung. Mỗi thư mục trong bộ nhớ dùng chung của người dùng có giới hạn là 500.000 mục, bao gồm cả tệp, thư mục và lối tắt. Hạn mức này dựa trên số lượng mục, chứ không phải mức sử dụng bộ nhớ. Để biết thêm thông tin, hãy xem bài viết Hạn mức của bộ nhớ dùng chung trong Google Drive.
Mẫu JSON sau đây thể hiện lỗi này:
{
"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."
}
}
Để khắc phục lỗi này, hãy giảm số lượng mục trong bộ nhớ dùng chung. Bộ nhớ dùng chung có quá nhiều tệp có thể dẫn đến việc khó sắp xếp và tìm kiếm.
teamDriveHierarchyTooDeep
Lỗi teamDriveHierarchyTooDeep
xảy ra khi vượt quá giới hạn số cấp thư mục lồng nhau trong bộ nhớ dùng chung. Bộ nhớ dùng chung của người dùng không thể chứa nhiều hơn 100 cấp thư mục được lồng. Để biết thêm thông tin, hãy xem phần Giới hạn độ sâu thư mục.
{
"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."
}
}
Cách khắc phục lỗi này:
- Thông báo cho người dùng rằng bộ nhớ dùng chung không cho phép đặt thư mục có nhiều hơn 100 cấp độ.
- Nếu người dùng phải tạo một thư mục lồng nhau khác, hãy hướng dẫn họ sắp xếp lại thư mục mẹ dự định có chiều sâu dưới 100 cấp hoặc sử dụng một thư mục mẹ khác đã đáp ứng yêu cầu.
teamDriveMembershipRequired
Lỗi này xảy ra khi người dùng cố gắng truy cập vào một bộ nhớ dùng chung mà họ không phải là thành viên. Mẫu JSON sau đây thể hiện lỗi này:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDriveMembershipRequired",
"message": "The attempted action requires shared drive membership."
}
],
"code": 403,
"message": "The attempted action requires shared drive membership."
}
}
Để khắc phục lỗi này, hãy thử một trong những cách sau:
Yêu cầu người quản lý của bộ nhớ dùng chung thêm bạn với các quyền phù hợp cho hành động mà bạn phải thực hiện.
Xem lại Vai trò và quyền của Drive để tìm hiểu xem ai có thể truy cập và quản lý ổ đĩa dùng chung. Bạn cũng có thể xem thêm thông tin về các cấp truy cập trong bài viết Tạo bộ nhớ dùng chung.
teamDrivesFolderMoveInNotSupported
Lỗi này xảy ra khi người dùng cố gắng di chuyển một thư mục từ Drive của tôi sang bộ nhớ dùng chung. Mẫu JSON sau đây biểu thị lỗi này:
{
"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."
}
}
Để khắc phục lỗi này, hãy thử một trong những cách sau:
Di chuyển từng mục từ thư mục vào một bộ nhớ dùng chung bằng cách sử dụng API Drive. Đặt tham số
supportsAllDrives=true
để biểu thị việc hỗ trợ cả Drive của tôi và bộ nhớ dùng chung.Nếu bạn phải di chuyển thư mục vào bộ nhớ dùng chung, hãy sử dụng giao diện người dùng của Drive. Để biết thêm thông tin, hãy xem bài viết Di chuyển thư mục vào bộ nhớ dùng chung với tư cách quản trị viên.
teamDrivesParentLimit
Lỗi này xảy ra khi người dùng cố gắng thêm nhiều mục gốc vào một mục trong bộ nhớ dùng chung. Mẫu JSON sau đây thể hiện lỗi này:
{
"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."
}
}
Để khắc phục lỗi này, hãy sử dụng lối tắt trên Drive để thêm nhiều đường liên kết vào một tệp. Mặc dù một lối tắt chỉ có thể có một mục gốc, nhưng bạn có thể sao chép tệp lối tắt vào các vị trí bổ sung. Để biết thêm thông tin, hãy xem bài viết Tạo lối tắt đến một tệp trên Drive.
UrlLeaseLimitExceeded
Lỗi này xảy ra khi bạn cố gắng lưu dữ liệu trò chơi trên Google Play thông qua ứng dụng của mình. Mẫu JSON sau đây thể hiện lỗi này:
{
"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."
}
}
Để khắc phục lỗi này, hãy hoàn tất hoặc huỷ mọi lượt tải lên bản tổng quan nhanh trước khi tạo bản tổng quan nhanh khác.
userRateLimitExceeded
Lỗi này xảy ra khi bạn đã đạt đến giới hạn trên mỗi người dùng. Đây có thể là giới hạn của Bảng điều khiển Google Cloud hoặc giới hạn của phần phụ trợ của Drive. Mẫu JSON sau đây thể hiện lỗi này:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "userRateLimitExceeded",
"message": "User Rate Limit Exceeded"
}
],
"code": 403,
"message": "User Rate Limit Exceeded"
}
}
Để khắc phục lỗi này, hãy thử một trong những cách sau:
Tăng hạn mức trên mỗi người dùng trong dự án trên Google Cloud. Để biết thêm thông tin, hãy yêu cầu tăng hạn mức.
Nếu một người dùng gửi nhiều yêu cầu thay mặt cho nhiều người dùng của một tài khoản Google Workspace, hãy cân nhắc sử dụng một tài khoản dịch vụ có tính năng uỷ quyền trên toàn miền bằng cách sử dụng tham số
quotaUser
.Sử dụng thời gian đợi luỹ thừa để thử lại yêu cầu.
Để biết thông tin về các hạn mức của API Drive, hãy tham khảo phần Hạn mức sử dụng.
Lỗi 404
Các lỗi này có nghĩa là không thể truy cập vào tài nguyên được yêu cầu hoặc tài nguyên đó không tồn tại.
notFound
Lỗi này xảy ra khi người dùng không có quyền đọc tệp hoặc tệp không tồn tại. Mẫu JSON sau đây thể hiện lỗi này:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "notFound",
"message": "File not found {fileId}"
}
],
"code": 404,
"message": "File not found: {fileId}"
}
}
Cách khắc phục lỗi này:
- Nếu tệp nằm trong một bộ nhớ dùng chung và bạn đang sử dụng phương thức
files.get
, hãy đảm bảo rằng tham số truy vấnsupportsAllDrives
được đặt thànhtrue
. - Thông báo cho người dùng rằng họ không có quyền đọc tệp hoặc tệp không tồn tại.
- Hướng dẫn người dùng liên hệ với chủ sở hữu tệp và yêu cầu cấp quyền truy cập vào tệp.
Lỗi 429
Những lỗi này có nghĩa là quá nhiều yêu cầu được gửi đến API quá nhanh.
rateLimitExceeded
Lỗi này xảy ra khi người dùng đã gửi quá nhiều yêu cầu trong một khoảng thời gian nhất định. Mẫu JSON sau đây thể hiện lỗi này:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "rateLimitExceeded",
"message": "Rate Limit Exceeded"
}
],
"code": 429,
"message": "Rate Limit Exceeded"s
}
}
Để khắc phục lỗi này, hãy sử dụng tính năng thời gian đợi luỹ thừa để thử lại yêu cầu.
Lỗi 500, 502, 503, 504
Những lỗi này xảy ra khi một lỗi máy chủ không mong muốn phát sinh trong khi xử lý yêu cầu. Có nhiều vấn đề có thể gây ra các lỗi này, bao gồm cả thời gian của một yêu cầu trùng lặp với một yêu cầu khác hoặc yêu cầu thực hiện một hành động không được hỗ trợ, chẳng hạn như cố gắng cập nhật quyền cho một trang trong Google Sites thay vì toàn bộ trang web.
Sau đây là danh sách các lỗi 5xx:
- Lỗi 500 trong phần phụ trợ
- 502 Cổng vào không hợp lệ
- 503 Không có dịch vụ
- 504 Hết thời gian chờ của cổng
Để khắc phục lỗi này, hãy sử dụng thời gian đợi luỹ thừa để thử lại yêu cầu.