Поделиться через


Коды состояний и ошибок

Операции REST API для службы хранилища Azure возвращают стандартные коды состояния HTTP, как определено в определениях кода состояния HTTP/1.1.

Операции 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 в заголовке ответа.

Заголовок ответа Описание
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>

В следующих разделах приведены списки кодов ошибок, которые могут оказаться полезными.

Ответы об ошибках для хранилища таблиц

Ответы об ошибках для хранилища таблиц соответствуют формату ошибок, описанному в разделе 19 спецификации OData. Могут быть включены дополнительные сведения об ошибке, но ответ об ошибке всегда соответствует спецификации OData .

Пакетные ответы об ошибках похожи на стандартные ответы об ошибках хранилища таблиц. Дополнительные сведения см. в статье о выполнении транзакций для группы сущностей.

Примечание

JSON — это рекомендуемый формат полезных данных для хранилища таблиц. Это единственный формат, поддерживаемый для версии 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 (версии до 11.12.2015):

<?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 служб хранилища