REST Resource: curators.reports.operations

المورد: العملية

يمثّل هذا المورد عملية طويلة ناتجة عن طلب بيانات من واجهة برمجة التطبيقات من الشبكة.

تمثيل 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

يشير الحقل إلى بيانات وصفية خاصة بالخدمة ومرتبطة بالعملية. يتضمّن عادةً معلومات حول مستوى تقدّم العملية وبيانات وصفية شائعة مثل وقت الإنشاء. يُرجى الِعلم أنّ بعض الخدمات قد لا توفّر هذه البيانات. إذا أدّى إجراء ما إلى بدء عملية طويلة، يجب أن يوثّق نوع البيانات الوصفية، إن وُجدِت.

هو كائن يحتوي على حقول من أي نوع. يتضمّن حقل إضافي "@type" معرّف موارد منتظم (URI) يحدّد نوع الكائن. مثال: { "id": 1234, "@type": "types.example.com/standard/id" }.

done

boolean

إذا كانت القيمة false، هذا يعني أنّ العملية ما زالت قيد التنفيذ. أما إذا كانت true، فهذا يعني أنّ العملية اكتملت، ويمكن عندها الوصول إلى error أو response.

حقل الربط result يمثّل نتيجة العملية، والتي يمكن أن تكون إما error أو response صالحة. إذا كانت done == false، هذا يعني أنّه لم يتم ضبط أي من error أو response. إذا كانت done == true، هذا يعني أنّه يمكن ضبط إما error أو response فقط. يُرجى العِلم أنّ بعض الخدمات قد لا توفّر النتيجة. يمكن أن تكون result واحدة فقط مما يلي:
error

object (Status)

يمثّل نتيجة الخطأ للعملية في حال فشلها أو إلغائها.

response

object

يشير هذا الحقل إلى الاستجابة المعتادة إذا كانت العملية ناجحة. إذا كان الإجراء الأصلي لا يعرض أي بيانات عند نجاحه، مثل Delete، تكون الاستجابة google.protobuf.Empty. وإذا كان الإجراء الأصلي أحد العمليات الشائعة مثل Get أو Create أو Update، يجب أن تكون الاستجابة هي المورد نفسه. أما بالنسبة إلى الإجراءات الأخرى، فيجب أن يكون نوع الاستجابة بصيغة XxxResponse، حيث يمثّل Xxx اسم الإجراء الأصلي. على سبيل المثال، إذا كان اسم الإجراء الأصلي TakeSnapshot()، سيكون نوع الاستجابة المستنتَج TakeSnapshotResponse.

هو كائن يحتوي على حقول من أي نوع. يتضمّن حقل إضافي "@type" معرّف موارد منتظم (URI) يحدّد نوع الكائن. مثال: { "id": 1234, "@type": "types.example.com/standard/id" }.

الحالة

يحدّد نوع Status نموذجًا منطقيًا للتعامل مع الأخطاء، يناسب بيئات البرمجة المختلفة مثل REST API وRPC API. كما يُستخدم في gRPC. تتكون رسالة Status من ثلاثة أجزاء من البيانات، هي رمز الخطأ ورسالته وتفاصيله.

يمكنك التعرّف على المزيد حول نموذج الخطأ هذا وكيفية التعامل معه في دليل تصميم واجهة برمجة التطبيقات.

تمثيل JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
الحقول
code

integer

هو رمز الحالة، ويجب أن يكون قيمة محدّدة مسبقًا من google.rpc.Code.

message

string

يشير إلى رسالة خطأ موجّهة للمطوّرين، ويجب أن تكون الرسالة بالإنجليزية. أما رسائل الخطأ الموجّهة للمستخدمين، فيجب ترجمتها وإرسالها في حقل google.rpc.Status.details أو ترجمتها من قِبل العميل.

details[]

object

يشير إلى قائمة بالرسائل التي تتضمّن تفاصيل الخطأ. تتوفّر مجموعة شائعة من أنواع الرسائل التي يمكن لواجهات برمجة التطبيقات استخدامها.

هو كائن يحتوي على حقول من أي نوع. يتضمّن حقل إضافي "@type" معرّف موارد منتظم (URI) يحدّد نوع الكائن. مثال: { "id": 1234, "@type": "types.example.com/standard/id" }.

الطُرق

get

تتيح هذه الطريقة الاطّلاع على أحدث حالة لعملية طويلة.