Operation

Diese Ressource steht für einen lange laufenden Vorgang, der das Ergebnis eines Netzwerk-API-Aufrufs ist.

JSON-Darstellung
{
  "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.
}
Felder
name

string

Der vom Server zugewiesene eindeutige Name. Das Format von name ist transferOperations/some/unique/name.

metadata

object

Stellt das Objekt für den Übertragungsvorgang dar. Wenn du ein TransferOperation-Objekt anfordern möchtest, verwende transferOperations.get.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.

done

boolean

Ist der Wert false, bedeutet das, dass der Vorgang noch läuft. Ist der Wert hingegen true, ist der Vorgang abgeschlossen und entweder error oder response ist verfügbar.

Union-Feld result. Das Ergebnis des Vorgangs kann entweder ein error oder eine gültige response sein. Wenn done = false ist, wird weder error noch response festgelegt. Wenn done = true ist, kann genau ein error oder eine response festgelegt werden. Einige Dienste liefern das Ergebnis möglicherweise nicht. Für result ist nur einer der folgenden Werte zulässig:
error

object (Status)

Das Fehlerergebnis des Vorgangs im Fall eines Fehlers oder Abbruchs.

response

object

Die normale, erfolgreiche Antwort des Vorgangs. Wenn die ursprüngliche Methode im Erfolgsfall keine Daten zurückgibt, wie bei Delete, lautet die Antwort google.protobuf.Empty. Ist die ursprüngliche Methode standardmäßig Get/Create/Update, sollte die Antwort die Ressource sein. Bei anderen Methoden sollte die Antwort vom Typ XxxResponse sein, wobei Xxx der Name der ursprünglichen Methode ist. Wenn zum Beispiel der Name der ursprünglichen Methode TakeSnapshot() ist, ist der gefolgerte Antworttyp TakeSnapshotResponse.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.

Status

Mit dem Typ Status wird ein logisches Fehlermodell definiert, das für verschiedene Programmierumgebungen wie REST APIs und RPC APIs geeignet ist. Dieses Modell wird von gRPC verwendet. Jede Status-Meldung enthält die folgenden drei Datenelemente: Fehlercode, Fehlermeldung und Fehlerdetails.

Weitere Informationen zu diesem Fehlermodell und zur Arbeit damit finden Sie in der API-Designanleitung.

JSON-Darstellung
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Felder
code

integer

Der Statuscode, der idealerweise ein ENUM-Wert von google.rpc.Code ist.

message

string

Eine an Entwickler gerichtete Fehlermeldung, die englischsprachig sein sollte. Jede Fehlermeldung an den Nutzer sollte lokalisiert und im Feld google.rpc.Status.details gesendet werden. Sie kann auch clientseitig lokalisiert werden.

details[]

object

Eine Auflistung aller Meldungen, die die Fehlerdetails enthalten. Es gibt einen gemeinsamen Satz von Nachrichtentypen, die APIs verwenden können.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.