REST Resource: operations
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Tài nguyên: Thao tác
Tài nguyên này đại diện cho một thao tác diễn ra trong thời gian dài, là kết quả của một lệnh gọi API mạng.
Biểu diễn dưới dạng 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 .
} |
Trường |
name |
string
Tên do máy chủ chỉ định, chỉ có tính duy nhất trong cùng một dịch vụ ban đầu trả về tên đó. Nếu bạn sử dụng ánh xạ HTTP mặc định, name phải là tên tài nguyên kết thúc bằng operations/{unique_id} .
|
metadata |
object
Siêu dữ liệu dành riêng cho dịch vụ liên quan đến thao tác. Thường thì tệp này chứa thông tin về tiến trình và siêu dữ liệu chung, chẳng hạn như thời gian tạo. Một số dịch vụ có thể không cung cấp siêu dữ liệu như vậy. Mọi phương thức trả về một thao tác diễn ra trong thời gian dài đều phải ghi lại loại siêu dữ liệu (nếu có). Một đối tượng chứa các trường thuộc một loại tuỳ ý. Một trường bổ sung "@type" chứa một URI xác định loại. Ví dụ: { "id": 1234, "@type": "types.example.com/standard/id" } .
|
done |
boolean
Nếu giá trị là false , tức là thao tác vẫn đang diễn ra. Nếu true , thao tác sẽ hoàn tất và có thể dùng error hoặc response .
|
Trường nhóm result . Kết quả của thao tác, có thể là error hoặc response hợp lệ. Nếu done == false , thì error và response đều không được đặt. Nếu done == true , bạn chỉ có thể đặt một trong hai tham số error hoặc response . Một số dịch vụ có thể không cung cấp kết quả. result chỉ có thể là một trong những trạng thái sau: |
error |
object (Status )
Kết quả lỗi của thao tác trong trường hợp thất bại hoặc huỷ.
|
response |
object
Phản hồi bình thường, thành công của thao tác. Nếu phương thức ban đầu không trả về dữ liệu khi thành công, chẳng hạn như Delete , thì phản hồi là google.protobuf.Empty . Nếu phương thức ban đầu là Get /Create /Update tiêu chuẩn, thì phản hồi phải là tài nguyên. Đối với các phương thức khác, phản hồi phải có kiểu XxxResponse , trong đó Xxx là tên phương thức ban đầu. Ví dụ: nếu tên phương thức ban đầu là TakeSnapshot() , thì loại phản hồi được suy luận là TakeSnapshotResponse . Một đối tượng chứa các trường thuộc một loại tuỳ ý. Một trường bổ sung "@type" chứa một URI xác định loại. Ví dụ: { "id": 1234, "@type": "types.example.com/standard/id" } .
|
Trạng thái
Loại Status
xác định một mô hình lỗi logic phù hợp với nhiều môi trường lập trình, bao gồm cả API REST và API RPC. gRPC sử dụng giao thức này. Mỗi thông báo Status
chứa 3 phần dữ liệu: mã lỗi, thông báo lỗi và thông tin chi tiết về lỗi.
Bạn có thể tìm hiểu thêm về mô hình lỗi này và cách xử lý mô hình này trong Hướng dẫn thiết kế API.
Biểu diễn dưới dạng JSON |
{
"code": integer,
"message": string,
"details": [
{
"@type": string,
field1: ...,
...
}
]
} |
Trường |
code |
integer
Mã trạng thái, phải là giá trị enum của google.rpc.Code .
|
message |
string
Thông báo lỗi dành cho nhà phát triển, phải bằng tiếng Anh. Mọi thông báo lỗi mà người dùng nhìn thấy đều phải được bản địa hoá và gửi trong trường google.rpc.Status.details hoặc được ứng dụng khách bản địa hoá.
|
details[] |
object
Danh sách các thông báo chứa thông tin chi tiết về lỗi. Có một nhóm các loại thông báo chung để API sử dụng. Một đối tượng chứa các trường thuộc một loại tuỳ ý. Một trường bổ sung "@type" chứa một URI xác định loại. Ví dụ: { "id": 1234, "@type": "types.example.com/standard/id" } .
|
Phương thức |
|
Lấy trạng thái mới nhất của một thao tác diễn ra trong thời gian dài. |
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-07-25 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-07-25 UTC."],[],[],null,["# REST Resource: operations\n\n- [Resource: Operation](#Operation)\n - [JSON representation](#Operation.SCHEMA_REPRESENTATION)\n- [Status](#Status)\n - [JSON representation](#Status.SCHEMA_REPRESENTATION)\n- [Methods](#METHODS_SUMMARY)\n\nResource: Operation\n-------------------\n\nThis resource represents a long-running operation that is the result of a network API call.\n\n| JSON representation |\n|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"name\": string, \"metadata\": { \"@type\": string, field1: ..., ... }, \"done\": boolean, // Union field `result` can be only one of the following: \"error\": { object (/workspace/drive/api/reference/rest/v3/operations#Status) }, \"response\": { \"@type\": string, field1: ..., ... } // End of list of possible types for union field `result`. } ``` |\n\n| Fields ||\n|------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `name` | `string` The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`. |\n| `metadata` | `object` Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. An object containing fields of an arbitrary type. An additional field `\"@type\"` contains a URI identifying the type. Example: `{ \"id\": 1234, \"@type\": \"types.example.com/standard/id\" }`. |\n| `done` | `boolean` If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. |\n| Union field `result`. The operation result, which can be either an `error` or a valid `response`. If `done` == `false`, neither `error` nor `response` is set. If `done` == `true`, exactly one of `error` or `response` can be set. Some services might not provide the result. `result` can be only one of the following: ||\n| `error` | `object (`[Status](/workspace/drive/api/reference/rest/v3/operations#Status)`)` The error result of the operation in case of failure or cancellation. |\n| `response` | `object` The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. An object containing fields of an arbitrary type. An additional field `\"@type\"` contains a URI identifying the type. Example: `{ \"id\": 1234, \"@type\": \"types.example.com/standard/id\" }`. |\n\nStatus\n------\n\nThe `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details.\n\nYou can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).\n\n| JSON representation |\n|------------------------------------------------------------------------------------------------------|\n| ``` { \"code\": integer, \"message\": string, \"details\": [ { \"@type\": string, field1: ..., ... } ] } ``` |\n\n| Fields ||\n|-------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `code` | `integer` The status code, which should be an enum value of `google.rpc.Code`. |\n| `message` | `string` A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details](/workspace/drive/api/reference/rest/v3/operations#Status.FIELDS.details) field, or localized by the client. |\n| `details[]` | `object` A list of messages that carry the error details. There is a common set of message types for APIs to use. An object containing fields of an arbitrary type. An additional field `\"@type\"` contains a URI identifying the type. Example: `{ \"id\": 1234, \"@type\": \"types.example.com/standard/id\" }`. |\n\n| Methods ------- ||\n|------------------------------------------------------------------|----------------------------------------------------|\n| ### [get](/workspace/drive/api/reference/rest/v3/operations/get) | Gets the latest state of a long-running operation. |"]]