Azure Storage에 대한 REST API 작업은 HTTP/1.1 상태 코드 정의에 정의된 대로 표준 HTTP 상태 코드를 반환합니다.
API 작업은 서비스에서 정의하는 자세한 오류 정보를 반환할 수도 있습니다. 이 오류 정보는 응답 본문에 반환됩니다.
오류 응답의 본문은 여기에 표시된 기본 형식을 따릅니다. 요소는 code
오류 코드 문자열을 나타내고 message
요소는 오류 메시지 문자열을 나타냅니다.
<?xml version="1.0" encoding="utf-8"?>
<Error>
<Code>string-value</Code>
<Message>string-value</Message>
</Error>
버전 2017-07-29 이상에서는 실패한 API 작업도 응답 헤더에 Azure Storage 오류 코드 문자열을 반환합니다.
응답 헤더 | 설명 |
---|---|
x-ms-error-code |
오류 코드 문자열을 나타내는 값입니다. |
특정 오류 응답에는 개발자에게 자세한 정보를 제공하기 위해 자세한 오류 정보가 포함될 수도 있습니다. 예를 들어 다음 오류 응답은 요청 URI에 지정된 잘못된 쿼리 매개 변수를 나타내며 잘못된 매개 변수의 이름 및 값, 오류 이유에 대한 추가 정보를 제공합니다.
<?xml version="1.0" encoding="utf-8"?>
<Error>
<Code>InvalidQueryParameterValue</Code>
<Message>Value for one of the query parameters specified in the request URI is invalid.</Message>
<QueryParameterName>popreceipt</QueryParameterName>
<QueryParameterValue>33537277-6a52-4a2b-b4eb-0f905051827b</QueryParameterValue>
<Reason>invalid receipt format</Reason>
</Error>
버전 2024-08-04 이상에서는 계정 SAS의 서명된 리소스 종류가 액세스하는 리소스와 일치하지 않는 경우 오류 응답에 자세한 오류 정보가 포함됩니다. 예를 들어 다음 오류 응답은 작업을 수행하는 데 서명된 리소스 유형 'o'가 필요함을 나타냅니다.
<?xml version="1.0" encoding="utf-8"?>
<Error>
<Code>AuthorizationResourceTypeMismatch</Code>
<Message>This request is not authorized to perform this operation using this resource type. RequestId:42a48a49-201e-0092-3770-a7ea70000000 Time:2024-05-16T09:04:16.3226200Z</Message>
<ExtendedErrorDetail>SignedResourceTypes 'o' is required to perform this operation.</ExtendedErrorDetail>
</Error>
다음 문서 목록에서는 유용할 수 있는 오류 코드 컬렉션을 제공합니다.
Blob Storage 오류 코드
API 오류 응답 복사
복사 API에 대한 오류 응답은 앞에서 언급한 것과 동일한 형식을 따릅니다. 오류 응답의 본문에는 오류 코드 문자열 message
에 대한 요소와 오류 메시지 문자열을 나타내는 요소가 포함됩니다code
.
버전 2024-02-04 이상에서는 원본의 실패가 이 정보를 반환하는 경우 복사 원본의 문제로 인해 복사 작업이 실패하는 경우 오류 응답에 자세한 오류가 포함될 수 있습니다. 응답에는 복사 원본 작업의 상태 코드를 표시하고, 복사 원본의 오류 응답에 반환된 항목을 x-ms-error-code
지정하고, CopySourceErrorMessage
CopySourceErrorCode
해당 오류 메시지를 나타내는 것이 포함될 CopySourceStatusCode
수 있습니다.
<?xml version="1.0" encoding="utf-8"?>
<Error>
<Code>CannotVerifyCopySource</Code>
<Message> The specified blob doesn’t exist.
RequestId:de1e2279-b01e-0000-5f26-5c4741000000
Time:2023-03-21T18:52:10.1018932Z</Message>
<CopySourceStatusCode> 404 </CopySourceStatusCode>
<CopySourceErrorCode> BlobNotFound </CopySourceErrorCode>
<CopySourceErrorMessage> The specified blob doesn’t exist </CopySourceErrorMessage>
</Error>
버전 2024-02-04 이상의 경우 Azure Storage는 복사 소스 실패에서 수신된 경우 응답 헤더에 복사 소스 상태 코드 및 오류 코드를 반환합니다.
응답 헤더 | 설명 |
---|---|
x-ms-copy-source-status-code |
복사 원본 실패의 상태 코드를 나타내는 값입니다. |
x-ms-copy-source-error-code |
복사 원본 실패에서 반환된 오류 코드 문자열을 나타내는 값입니다. |
다음 복사 API는 이러한 세부 정보를 반환합니다.
Table Storage에 대한 오류 응답
Table Storage에 대한 오류 응답은 OData 사양의 섹션 19에 설명된 오류 형식을 따릅니다. 자세한 오류 정보가 포함될 수 있지만 오류 응답은 항상 사양을 준수합니다 OData
.
일괄 처리 오류 응답은 표준 Table Storage 오류 응답과 유사합니다. 자세한 정보는 Performing entity group transactions을 참조하십시오.
비고
JSON은 Table Storage에 권장되는 페이로드 형식입니다. 버전 2015-12-11 이상에서 지원되는 유일한 형식입니다.
다음 예제에서는 JSON 형식(버전 2013-08-15 이상)의 기본 오류 본문을 보여 줍니다.
{"odata.error":{"code":"ResourceNotFound","message":{"lang":"en-US","value":"The specified resource does not exist.\nRequestId:102a2b55-eb35-4254-9daf-854db78a47bd\nTime:2014-06-04T16:18:20.4307735Z"}}}
다음 샘플에서는 Atom 형식(버전 2015-12-11 이하)의 기본 오류 본문을 보여 줍니다.
<?xml version="1.0" encoding="utf-8"?>
<error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
<code>ResourceNotFound</code>
<message xml:lang="en-US">The specified resource does not exist.
RequestId:e288ba1e-f5dd-4014-9e09-f1263d223dec
Time:2014-06-04T16:18:20.7088013Z</message>
</error>