全部產品
Search
文件中心

Object Storage Service:C錯誤處理

更新時間:Feb 28, 2024

本文介紹OSS C SDK的錯誤處理。

異常處理

使用OSS C SDK時,如果請求出錯,會在aos_status_s中輸出相應的錯誤資訊。aos_status_s包含以下資訊。

錯誤碼

描述

字元類型

code

出錯請求的HTTP狀態代碼。

整型

error_code

OSS的錯誤碼。

字串

error_msg

OSS的錯誤資訊。

字串

req_id

標識該次請求的UUID。

字串

逾時處理

如果返回的aos_status_t中的code不等於2XX,且error_code為-992或者-995時,表示連結逾時或請求逾時,可以重試。

使用aos_status.h中的aos_should_retry(aos_status_t *),判斷返回的錯誤碼是否需要重試。如果返回1,表示需要重試。

常見錯誤碼

錯誤碼

描述

HTTP 狀態代碼

AccessDenied

拒絕訪問

403

BucketAlreadyExists

儲存空間已存在

409

BucketNotEmpty

儲存空間非空

409

EntityTooLarge

實體過大

400

EntityTooSmall

實體過小

400

FileGroupTooLarge

檔案組過大

400

FilePartNotExist

檔案分區不存在

400

FilePartStale

檔案分區過時

400

InvalidArgument

參數格式錯誤

400

InvalidAccessKeyId

AccessKey ID不存在

403

InvalidBucketName

無效的儲存空間名稱

400

InvalidDigest

無效的摘要

400

InvalidObjectName

無效的檔案名稱

400

InvalidPart

無效的分區

400

InvalidPartOrder

無效的分區順序

400

InvalidTargetBucketForLogging

日誌轉存操作中指定用於儲存日誌記錄的Bucket無效

400

InternalError

OSS內部錯誤

500

MalformedXML

XML格式非法

400

MethodNotAllowed

不支援該方法

405

MissingArgument

缺少參數

411

MissingContentLength

缺少內容長度

411

NoSuchBucket

儲存空間不存在

404

NoSuchKey

檔案不存在

404

NoSuchUpload

分區上傳ID不存在

404

NotImplemented

無法處理的方法

501

PreconditionFailed

預先處理錯誤

412

RequestTimeTooSkewed

用戶端本地時間和OSS伺服器時間相差超過15分鐘

403

RequestTimeout

請求逾時

400

SignatureDoesNotMatch

簽名錯誤

403

TooManyBuckets

儲存空間數量超過限制

400