REST Resource: projects.locations.operations

משאב: פעולה

המשאב הזה מייצג פעולה ממושכת שהיא תוצאה של קריאה ל-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

מטא-נתונים ספציפיים לשירות שמשויכים לפעולה. בדרך כלל הוא מכיל מידע על ההתקדמות ומטא-נתונים נפוצים, כמו שעת היצירה. יכול להיות ששירותים מסוימים לא יספקו מטא-נתונים כאלה. כל שיטה שמחזירה פעולה ממושכת צריכה לתעד את סוג המטא-נתונים, אם יש כזה.

אובייקט שמכיל שדות מסוג שרירותי. שדה נוסף "@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 הוא השם המקורי של ה-method. לדוגמה, אם השם המקורי של ה-method הוא TakeSnapshot(), סוג התגובה שמתקבלת הוא TakeSnapshotResponse.

אובייקט שמכיל שדות מסוג שרירותי. שדה נוסף "@type" מכיל URI המזהה את הסוג. לדוגמה: { "id": 1234, "@type": "types.example.com/standard/id" }.

סטטוס

הסוג Status מגדיר מודל שגיאות לוגי שמתאים לסביבות תכנות שונות, כולל ממשקי API ל-REST וממשקי API ל-RPC. הוא נמצא בשימוש של gRPC. כל הודעת Status מכילה שלושה נתונים: קוד שגיאה, הודעת שגיאה ופרטי שגיאה.

במדריך לעיצוב API אפשר לקרוא מידע נוסף על מודל השגיאות הזה ולהבין איך לעבוד איתו.

ייצוג JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
שדות
code

integer

קוד הסטטוס, שצריך להיות ערך enum של google.rpc.Code.

message

string

הודעת שגיאה שמיועדת למפתחים וצריכה להיות באנגלית. כל הודעת שגיאה שמוצגת למשתמשים צריכה להיות מותאמת לשוק המקומי ולשלוח אותה בשדה google.rpc.Status.details או להתאים אותה לשוק המקומי.

details[]

object

רשימה של הודעות שמכילות את פרטי השגיאה. יש כמה סוגים של הודעות שאפשר להשתמש בהם בממשקי API.

אובייקט שמכיל שדות מסוג שרירותי. שדה נוסף "@type" מכיל URI המזהה את הסוג. לדוגמה: { "id": 1234, "@type": "types.example.com/standard/id" }.

שיטות

get

כך אפשר ליהנות מהמצב העדכני ביותר של פעולה ממושכת.