REST Resource: operations

Kaynak: İşlem

Bu kaynak, bir ağ API çağrısının sonucu olan uzun süreli bir işlemi temsil eder.

JSON gösterimi
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // End of mutually exclusive fields.
}
Alanlar
name

string

Sunucu tarafından atanan ad. Yalnızca bu adı ilk kez sağlayan hizmet kapsamında benzersizdir. Varsayılan HTTP eşlemesini kullanıyorsanız name değeri, operations/{unique_id} ile biten bir kaynak adı olmalıdır.

metadata

object

İşlemle ilişkilendirilen, hizmete özgü meta veriler. Genellikle ilerleme bilgilerini ve oluşturma zamanı gibi ortak meta verileri içerir. Bazı hizmetler bu tür meta verileri sağlamayabilir. Uzun süreli bir işlemi döndüren tüm yöntemler, varsa meta veri türünü belirtmelidir.

Herhangi türde alanlar içeren bir nesne. Ek bir "@type" alanı, türü tanımlayan bir URI içerir. Örnek: { "id": 1234, "@type": "types.example.com/standard/id" }.

done

boolean

Değer false olması işlemin devam ettiği anlamına gelir. Değer true olduğunda işlem tamamlanmış olup error veya response kullanılabilir.

İşlem sonucu. error veya geçerli bir response olabilir. done == false ise error öğesi de response öğesi de ayarlanmaz. done == true ise error veya response öğelerinden yalnızca biri ayarlanabilir. Bazı hizmetler sonuç vermeyebilir. Aşağıda, aynı anda kullanılamayan alanların listesi verilmiştir. Yanıt içinde en fazla bir alan ayarlanır:
error

object (Status)

İşlem başarısız olduğunda veya iptal edildiğinde sistemin verdiği hata bilgisi.

response

object

İşlem başarılı olduğunda sistemin verdiği normal yanıt. Orijinal yöntem başarılı olduğunda veri döndürmüyorsa (ör. Delete) yanıt google.protobuf.Empty olur. Orijinal yöntem standart Get/Create/Update ise yanıt kaynak olmalıdır. Diğer yöntemler için yanıtın türü XxxResponse olmalıdır. Burada Xxx, orijinal yöntem adıdır. Örneğin, orijinal yöntem adı TakeSnapshot() ise tahmin edilen yanıt türü TakeSnapshotResponse olur.

Herhangi türde alanlar içeren bir nesne. Ek bir "@type" alanı, türü tanımlayan bir URI içerir. Örnek: { "id": 1234, "@type": "types.example.com/standard/id" }.

Karşılıklı olarak hariç tutulan alanların sonu.

Durum

Status türü, REST API'ler ve RPC API'ler dahil olmak üzere farklı programlama ortamlarına uygun mantıksal bir hata modeli tanımlar. gRPC tarafından kullanılır. Her Status mesajı; hata kodu, hata mesajı ve hata ayrıntıları olmak üzere üç veri içerir.

Bu hata modeli ve nasıl kullanılacağı hakkında daha fazla bilgiyi API Tasarım Kılavuzu'nda bulabilirsiniz.

JSON gösterimi
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Alanlar
code

integer

Durum kodu, google.rpc.Code enum değeri olmalıdır.

message

string

Geliştiriciye yönelik hata mesajı (İngilizce olmalıdır). Kullanıcıya gösterilen tüm hata mesajları yerelleştirilmiş olup google.rpc.Status.details alanında gönderilmeli veya istemci tarafından yerelleştirilmelidir.

details[]

object

Hata ayrıntılarını içeren mesajların listesi. API'lerin kullanabileceği ortak bir mesaj türleri kümesi vardır.

Herhangi türde alanlar içeren bir nesne. Ek bir "@type" alanı, türü tanımlayan bir URI içerir. Örnek: { "id": 1234, "@type": "types.example.com/standard/id" }.

Yöntemler

get

Uzun süreli bir işlemin en son durumunu bildirir.