Package google.longrunning

ดัชนี

การดำเนินการ

จัดการการดำเนินการที่ใช้เวลานานด้วยบริการ API

เมื่อเมธอด API ใช้เวลานานจึงจะเสร็จสมบูรณ์ เมธอดสามารถออกแบบมาให้แสดงผล Operation กับไคลเอ็นต์ได้ และไคลเอ็นต์สามารถใช้อินเทอร์เฟซนี้เพื่อรับการตอบกลับจริงแบบไม่พร้อมกันด้วยการสำรวจทรัพยากรการดำเนินการ หรือส่งทรัพยากรการดำเนินการไปยัง API อื่น (เช่น Pub/Sub API) เพื่อรับการตอบกลับ บริการ API ที่แสดงผลการดำเนินการที่ใช้เวลานานควรใช้อินเทอร์เฟซ Operations เพื่อให้นักพัฒนาซอฟต์แวร์ได้รับประสบการณ์ไคลเอ็นต์ที่สอดคล้องกัน

CancelOperation

rpc CancelOperation(CancelOperationRequest) returns (Empty)

เริ่มการยกเลิกแบบไม่พร้อมกันในการดำเนินการที่ใช้เวลานาน เซิร์ฟเวอร์จะพยายามยกเลิกการดำเนินการอย่างสุดความสามารถ แต่ไม่ได้รับประกันว่าจะสำเร็จ หากเซิร์ฟเวอร์ไม่รองรับวิธีการนี้ ระบบจะแสดงผล google.rpc.Code.UNIMPLEMENTED ลูกค้าสามารถใช้ Operations.GetOperation หรือวิธีอื่นๆ เพื่อตรวจสอบว่าการยกเลิกสำเร็จหรือไม่ หรือการดำเนินการเสร็จสมบูรณ์แม้จะมีการยกเลิกหรือไม่ เมื่อยกเลิกเรียบร้อยแล้ว ระบบจะไม่ลบการดำเนินการ แต่จะกลายเป็นการดำเนินการที่มีค่า Operation.error ที่มี google.rpc.Status.code เป็น 1 ซึ่งสอดคล้องกับ Code.CANCELLED

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth ต่อไปนี้

  • https://www.googleapis.com/auth/cloud-platform
DeleteOperation

rpc DeleteOperation(DeleteOperationRequest) returns (Empty)

ลบการดำเนินการที่ทำงานเป็นเวลานาน เมธอดนี้ระบุว่าไคลเอ็นต์ไม่สนใจผลลัพธ์การดำเนินการแล้ว แต่จะไม่ยกเลิกการดำเนินการ หากเซิร์ฟเวอร์ไม่รองรับวิธีการนี้ ระบบจะแสดงผล google.rpc.Code.UNIMPLEMENTED

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth ต่อไปนี้

  • https://www.googleapis.com/auth/cloud-platform
GetOperation

rpc GetOperation(GetOperationRequest) returns (Operation)

รับสถานะล่าสุดของการดำเนินการที่ใช้เวลานาน ไคลเอ็นต์ใช้วิธีนี้เพื่อทำแบบสำรวจผลการดำเนินการได้เป็นระยะๆ ตามที่บริการ API แนะนำ

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth ต่อไปนี้

  • https://www.googleapis.com/auth/cloud-platform
สิทธิ์ IAM

ต้องมีสิทธิ์ IAM ต่อไปนี้ในทรัพยากร name

  • routeoptimization.operations.get

ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบ IAM

ListOperations

rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse)

แสดงรายการการดำเนินการที่ตรงกับตัวกรองที่ระบุไว้ในคำขอ หากเซิร์ฟเวอร์ไม่รองรับวิธีการนี้ ระบบจะแสดงผล UNIMPLEMENTED

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth ต่อไปนี้

  • https://www.googleapis.com/auth/cloud-platform
WaitOperation

rpc WaitOperation(WaitOperationRequest) returns (Operation)

รอจนกว่าการดำเนินการที่ใช้เวลานานซึ่งระบุไว้จะเสร็จสิ้นหรือถึงระยะหมดเวลาที่ระบุไว้เป็นระยะเวลาสูงสุด แล้วแสดงสถานะล่าสุด หากดำเนินการเสร็จแล้ว ระบบจะแสดงสถานะล่าสุดทันที หากระยะหมดเวลาที่ระบุมากกว่าระยะหมดเวลาเริ่มต้นของ HTTP/RPC ระบบจะใช้ระยะหมดเวลาของ HTTP/RPC หากเซิร์ฟเวอร์ไม่รองรับวิธีนี้ ระบบจะแสดงผลเป็น google.rpc.Code.UNIMPLEMENTED โปรดทราบว่าวิธีนี้ใช้ความพยายามอย่างดีที่สุด การดำเนินการอาจแสดงสถานะล่าสุดก่อนหมดเวลาที่กำหนด (รวมถึงทันที) ซึ่งหมายความว่าการตอบกลับทันทีก็ไม่ได้รับประกันว่าการดำเนินการเสร็จสมบูรณ์

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth ต่อไปนี้

  • https://www.googleapis.com/auth/cloud-platform

CancelOperationRequest

ข้อความคำขอสำหรับ Operations.CancelOperation

ช่อง
name

string

ชื่อของทรัพยากรการดำเนินการที่จะยกเลิก

DeleteOperationRequest

ข้อความคำขอสำหรับ Operations.DeleteOperation

ช่อง
name

string

ชื่อของทรัพยากรการดำเนินการที่จะลบ

GetOperationRequest

ข้อความคำขอสำหรับ Operations.GetOperation

ช่อง
name

string

ชื่อของทรัพยากรการดำเนินการ

ListOperationsRequest

ข้อความคำขอสำหรับ Operations.ListOperations

ช่อง
name

string

ชื่อทรัพยากรหลักของการดำเนินการ

filter

string

ตัวกรองรายการมาตรฐาน

page_size

int32

ขนาดหน้ารายการมาตรฐาน

page_token

string

โทเค็นหน้ารายการมาตรฐาน

ListOperationsResponse

ข้อความตอบกลับสำหรับ Operations.ListOperations

ช่อง
operations[]

Operation

ลิสต์การดำเนินการที่ตรงกับตัวกรองที่ระบุไว้ในคำขอ

next_page_token

string

โทเค็นหน้าถัดไปของรายการมาตรฐาน

การดำเนินการ

ทรัพยากรนี้แสดงการดำเนินการที่ใช้เวลานานซึ่งเป็นผลมาจากการเรียก API เครือข่าย

ช่อง
name

string

ชื่อที่เซิร์ฟเวอร์กำหนด ซึ่งจะซ้ำกันเฉพาะภายในบริการเดียวกันกับที่แสดงผลในตอนแรก หากคุณใช้การแมป HTTP เริ่มต้น name ควรเป็นชื่อทรัพยากรที่ลงท้ายด้วย operations/{unique_id}

metadata

Any

ข้อมูลเมตาเฉพาะบริการที่เชื่อมโยงกับการดำเนินการ โดยปกติแล้วจะมีข้อมูลความคืบหน้าและข้อมูลเมตาทั่วไป เช่น เวลาสร้าง บริการบางอย่างอาจไม่มีข้อมูลเมตาดังกล่าว เมธอดใดก็ตามที่ส่งกลับการดำเนินการที่ใช้เวลานานควรระบุประเภทข้อมูลเมตา หากมี

done

bool

หากค่าเป็น false แสดงว่าการดำเนินการยังดำเนินอยู่ หากเป็น true การดำเนินการนี้จะเสร็จสมบูรณ์ และสามารถใช้ error หรือ response ได้

ฟิลด์สหภาพ result ผลลัพธ์ของการดำเนินการ ซึ่งอาจเป็น error หรือ response ที่ถูกต้อง หาก done == false ระบบจะไม่ตั้งค่า error หรือ response หาก done == true คุณจะตั้งค่า error หรือ response ได้เพียงค่าเดียว บริการบางอย่างอาจแสดงผลลัพธ์ไม่ได้ result ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
error

Status

ผลลัพธ์ข้อผิดพลาดของการดำเนินการในกรณีที่ดำเนินการไม่สำเร็จหรือยกเลิก

response

Any

การตอบสนองที่สำเร็จของการดำเนินการ หากเมธอดเดิมไม่แสดงข้อมูลเกี่ยวกับความสําเร็จ เช่น Delete การตอบกลับจะเป็น google.protobuf.Empty หากเมธอดต้นฉบับคือ Get/Create/Update มาตรฐาน การตอบกลับควรเป็นแหล่งข้อมูล สําหรับเมธอดอื่นๆ การตอบกลับควรมีประเภท XxxResponse โดยที่ Xxx คือชื่อเมธอดเดิม เช่น หากชื่อเมธอดเดิมคือ TakeSnapshot() ประเภทการตอบกลับที่อนุมานจะเป็น TakeSnapshotResponse

WaitOperationRequest

ข้อความคำขอสำหรับ Operations.WaitOperation

ช่อง
name

string

ชื่อของทรัพยากรการดำเนินการที่จะรอ

timeout

Duration

ระยะเวลาสูงสุดที่จะรอก่อนที่จะหมดเวลา หากเว้นว่างไว้ ระบบจะรอไม่เกินเวลาที่โปรโตคอล HTTP/RPC ที่เกี่ยวข้องอนุญาต หากมีการระบุกำหนดเวลาของบริบท RPC ด้วย ระบบจะใช้กำหนดเวลาที่สั้นกว่า