REST Resource: operations

Kaynak: Operasyon

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,

  // 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.
}
Alanlar
name

string

Yalnızca orijinal olarak onu döndüren hizmet içinde benzersiz olan, sunucu tarafından atanan ad. Varsayılan HTTP eşlemesini kullanırsanız name , operations/{unique_id} ile biten bir kaynak adı olmalıdır.

metadata

object

İşlemle ilişkili 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üren bir işlemi döndüren herhangi bir yöntem, varsa meta veri türünü belgelemelidir.

Rastgele 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 ise işlemin halen devam ettiği anlamına gelir. true ise işlem tamamlanmıştır ve error ya da response mevcuttur.

Birleşim alanı result . Bir error ya da geçerli bir response olabilecek işlem sonucu. Eğer done == false ne error ne de response ayarlanır. Eğer done == true , tam olarak bir error veya response ayarlanabilir. Bazı hizmetler sonuç vermeyebilir. result aşağıdakilerden yalnızca biri olabilir:
error

object ( Status )

Arıza veya iptal durumunda işlemin hata sonucu.

response

object

Başarılı olması durumunda operasyonun normal tepkisi. Orijinal yöntem başarı durumunda hiçbir veri döndürmezse (örneğin, 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 XxxResponse türünde olması gerekir; burada Xxx , orijinal yöntemin adıdır. Örneğin, orijinal yöntem adı TakeSnapshot() ise, çıkarılan yanıt türü TakeSnapshotResponse olur.

Rastgele 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" } .

Durum

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

Bu hata modeli ve bununla nasıl çalışı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

google.rpc.Code öğesinin numaralandırma değeri olması gereken durum kodu.

message

string

İngilizce olması gereken, geliştiricinin karşılaştığı bir hata mesajı. Kullanıcının karşılaştığı herhangi bir hata mesajı yerelleştirilip google.rpc.Status.details alanına gönderilmeli veya istemci tarafından yerelleştirilmelidir.

details[]

object

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

Rastgele 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üren bir işlemin en son durumunu alır.