다음을 통해 공유


상태 및 오류 코드

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>

다음 문서 목록에서는 유용할 수 있는 오류 코드 컬렉션을 제공합니다.

API 오류 응답 복사

복사 API에 대한 오류 응답은 앞에서 언급한 것과 동일한 형식을 따릅니다. 오류 응답의 본문에는 오류 코드 문자열 message 에 대한 요소와 오류 메시지 문자열을 나타내는 요소가 포함됩니다code.

버전 2024-02-04 이상에서는 원본의 실패가 이 정보를 반환하는 경우 복사 원본의 문제로 인해 복사 작업이 실패하는 경우 오류 응답에 자세한 오류가 포함될 수 있습니다. 응답에는 복사 원본 작업의 상태 코드를 표시하고, 복사 원본의 오류 응답에 반환된 항목을 x-ms-error-code 지정하고, CopySourceErrorMessageCopySourceErrorCode 해당 오류 메시지를 나타내는 것이 포함될 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>  
  

참고하십시오

API 작업 문제 해결
HttpStatusCode 열거형
스토리지 서비스 REST