Этот ресурс представляет собой длительную операцию, являющуюся результатом вызова сетевого API.
JSON-представление
{"name": string,"metadata": {"@type": string,field1: ...,...},"done": boolean,// Union field result can be only one of the following:"error": {object (Status)},"response": {"@type": string,field1: ...,...}// End of list of possible types for union field result.}
Поля
name
string
Имя, назначенное сервером, уникальное только в пределах той службы, которая его первоначально возвращает. Если вы используете сопоставление HTTP по умолчанию, name должно быть именем ресурса, заканчивающимся на operations/{unique_id} .
metadata
object
Метаданные, относящиеся к службе, связанные с операцией. Обычно он содержит информацию о ходе выполнения и общие метаданные, такие как время создания. Некоторые службы могут не предоставлять такие метаданные. Любой метод, возвращающий длительную операцию, должен документировать тип метаданных, если таковые имеются.
done
boolean
Если значение false , это означает, что операция все еще выполняется. Если true , операция завершается и доступна либо error , либо response .
result поля объединения. Результат операции, который может быть либо error , либо допустимым response . Если done == false , ни error , ни response не устанавливаются. Если done == true , можно установить ровно одну error или response . Некоторые службы могут не предоставить результат. result может быть только одним из следующих:
Ошибка результата операции в случае сбоя или отмены.
response
object
Нормальный, успешный ответ на операцию. Если исходный метод не возвращает данных об успехе, например, Delete , ответом будет google.protobuf.Empty . Если исходный метод — стандартный Get / Create / Update , ответом должен быть ресурс. Для других методов ответ должен иметь тип XxxResponse , где Xxx — исходное имя метода. Например, если исходное имя метода — TakeSnapshot() , предполагаемый тип ответа — TakeSnapshotResponse .
Статус
Тип Status определяет логическую модель ошибок, подходящую для различных сред программирования, включая API REST и API RPC. Он используется gRPC . Каждое сообщение Status содержит три части данных: код ошибки, сообщение об ошибке и сведения об ошибке.
Подробнее об этой модели ошибок и о том, как с ней работать, можно узнать в API Design Guide .
Код состояния, который должен быть значением перечисления google.rpc.Code .
message
string
Сообщение об ошибке для разработчика, которое должно быть на английском языке. Любое сообщение об ошибке, обращенное к пользователю, должно быть локализовано и отправлено в поле google.rpc.Status.details или локализовано клиентом.
details[]
object
Список сообщений, содержащих сведения об ошибке. Существует общий набор типов сообщений для использования API.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2024-11-13 UTC."],[[["The Operation resource represents a long-running operation initiated by a network API call, containing metadata, status, and result information."],["Operations can be in progress (`done=false`) or completed (`done=true`) with either an error or a response."],["The Status resource provides a standardized error model with an error code, message, and details for API responses."],["The `get` method retrieves the current state of a specific long-running operation."]]],[]]