REST Resource: 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 คือชื่อวิธีการดั้งเดิม ตัวอย่างเช่น หากชื่อวิธีการดั้งเดิมคือ TakeSnapshot() ประเภทการตอบสนองที่อนุมานจะเป็น TakeSnapshotResponse

วัตถุที่มีฟิลด์ประเภทใดก็ได้ ฟิลด์เพิ่มเติม "@type" มี URI ที่ระบุประเภท ตัวอย่าง: { "id": 1234, "@type": "types.example.com/standard/id" }

สถานะ

ประเภท Status จะกำหนดโมเดลข้อผิดพลาดเชิงตรรกะที่เหมาะสำหรับสภาพแวดล้อมการเขียนโปรแกรมที่แตกต่างกัน รวมถึง REST API และ RPC API มันถูกใช้โดย gRPC ข้อความ Status แต่ละข้อความประกอบด้วยข้อมูลสามส่วน: รหัสข้อผิดพลาด ข้อความแสดงข้อผิดพลาด และรายละเอียดข้อผิดพลาด

คุณสามารถดูข้อมูลเพิ่มเติมเกี่ยวกับโมเดลข้อผิดพลาดนี้และวิธีการทำงานกับโมเดลข้อผิดพลาดนี้ได้ใน คู่มือการออกแบบ API

การเป็นตัวแทน JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
เขตข้อมูล
code

integer

รหัสสถานะ ซึ่งควรเป็นค่าแจงนับของ google.rpc.Code

message

string

ข้อความแสดงข้อผิดพลาดที่ผู้พัฒนาพบ ซึ่งควรเป็นภาษาอังกฤษ ข้อความแสดงข้อผิดพลาดที่ผู้ใช้พบควรได้รับการแปลและส่งในช่อง google.rpc.Status.details หรือไคลเอ็นต์แปลเป็นภาษาท้องถิ่น

details[]

object

รายการข้อความที่มีรายละเอียดข้อผิดพลาด มีชุดประเภทข้อความทั่วไปสำหรับ API ที่จะใช้

วัตถุที่มีฟิลด์ประเภทใดก็ได้ ฟิลด์เพิ่มเติม "@type" มี URI ที่ระบุประเภท ตัวอย่าง: { "id": 1234, "@type": "types.example.com/standard/id" }

วิธีการ

get

รับสถานะล่าสุดของการดำเนินการที่ใช้เวลานาน