Коды состояний и ошибок
Операции 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 служб хранилища