Package google.longrunning

ดัชนี

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

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

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

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

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/datastore
  • https://www.googleapis.com/auth/cloud-platform

สำหรับข้อมูลเพิ่มเติม โปรดดูภาพรวมการตรวจสอบสิทธิ์

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

rpc DeleteOperation(DeleteOperationRequest) returns (Empty)

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

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

ต้องใช้ขอบเขต OAuth รายการใดรายการหนึ่งต่อไปนี้

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

สำหรับข้อมูลเพิ่มเติม โปรดดูภาพรวมการตรวจสอบสิทธิ์

GetOperation

rpc GetOperation(GetOperationRequest) returns (Operation)

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

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

ต้องใช้ขอบเขต OAuth รายการใดรายการหนึ่งต่อไปนี้

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

สำหรับข้อมูลเพิ่มเติม โปรดดูภาพรวมการตรวจสอบสิทธิ์

แสดงรายการการดำเนินการ

rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse)

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

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

ต้องใช้ขอบเขต OAuth รายการใดรายการหนึ่งต่อไปนี้

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

สำหรับข้อมูลเพิ่มเติม โปรดดูภาพรวมการตรวจสอบสิทธิ์

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

rpc WaitOperation(WaitOperationRequest) returns (Operation)

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

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

ต้องใช้ขอบเขต OAuth รายการใดรายการหนึ่งต่อไปนี้

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

สำหรับข้อมูลเพิ่มเติม โปรดดูภาพรวมการตรวจสอบสิทธิ์

ยกเลิกการดำเนินการคำขอ

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

ช่อง
name

string

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

คำขอลบการดำเนินการ

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

ช่อง
name

string

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

คำขอรับการดำเนินการ

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

ช่อง
name

string

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

คำขอ ListOperations

ข้อความคำขอสำหรับ 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 ได้ 1 รายการ บริการบางอย่างอาจแสดงผลลัพธ์ไม่ได้ result ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้
error

Status

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

response

Any

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

รอการดำเนินการคำขอ

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

ช่อง
name

string

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

timeout

Duration

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