Package google.bytestream

Chỉ mục

ByteStream

Byte Stream API cho phép ứng dụng đọc và ghi một luồng byte vào và đi từ một tài nguyên. Tài nguyên có tên và những tên này được cung cấp trong lệnh gọi API bên dưới để xác định tài nguyên được đọc hoặc ghi vào.

Tất cả quy trình triển khai Byte Stream API đều xuất giao diện được xác định tại đây:

  • Read(): Đọc nội dung của tài nguyên.

  • Write(): Ghi nội dung của tài nguyên. Ứng dụng có thể gọi Write() nhiều lần bằng cùng một tài nguyên và có thể kiểm tra trạng thái ghi bằng cách gọi QueryWriteStatus().

ByteStream API không cung cấp cách trực tiếp để truy cập/sửa đổi bất kỳ siêu dữ liệu nào được liên kết với tài nguyên.

Các lỗi mà dịch vụ trả về nằm trong không gian lỗi chính tắc của Google.

Viết

rpc Write(WriteRequest) returns (WriteResponse)

Write() dùng để gửi nội dung của tài nguyên dưới dạng một chuỗi byte. Các byte này được gửi theo trình tự các giao thức yêu cầu của RPC truyền trực tuyến phía máy khách.

Hành động Write() có thể tiếp tục. Nếu xảy ra lỗi hoặc mất kết nối trong Write(), ứng dụng cần kiểm tra trạng thái của Write() bằng cách gọi QueryWriteStatus() và tiếp tục ghi từ committed_size được trả về. Lượng dữ liệu này có thể ít hơn lượng dữ liệu mà ứng dụng đã gửi trước đó.

Việc gọi Write() trên tên tài nguyên đã được viết và hoàn tất trước đó có thể gây ra lỗi, tuỳ thuộc vào việc dịch vụ cơ bản có cho phép ghi đè các tài nguyên đã viết trước đó hay không.

Khi ứng dụng đóng kênh yêu cầu, dịch vụ sẽ phản hồi bằng một WriteResponse. Dịch vụ này sẽ không xem tài nguyên dưới dạng complete cho đến khi ứng dụng gửi một WriteRequestfinish_write được đặt thành true. Việc gửi bất kỳ yêu cầu nào trên một luồng sau khi gửi yêu cầu có finish_write được đặt thành true sẽ gây ra lỗi. Ứng dụng phải kiểm tra WriteResponse nhận được để xác định lượng dữ liệu mà dịch vụ có thể cam kết và liệu dịch vụ có xem tài nguyên dưới dạng complete hay không.

Phạm vi uỷ quyền

Yêu cầu một trong các phạm vi OAuth sau:

  • https://www.googleapis.com/auth/plus.business.manage
  • https://www.googleapis.com/auth/business.manage

Để biết thêm thông tin, hãy xem Tổng quan về OAuth 2.0.

RestByteStream

UpdateMedia

rpc UpdateMedia(UpdateMediaRequest) returns (Media)

Tải nội dung nghe nhìn lên. Tính năng tải lên được hỗ trợ trên URI /upload/v1/media/{+name}.

Phạm vi uỷ quyền

Yêu cầu một trong các phạm vi OAuth sau:

  • https://www.googleapis.com/auth/plus.business.manage
  • https://www.googleapis.com/auth/business.manage

Để biết thêm thông tin, hãy xem Tổng quan về OAuth 2.0.

Nội dung nghe nhìn

Tài nguyên về nội dung đa phương tiện.

Các trường
resource_name

string

Tên của tài nguyên nội dung đa phương tiện.

UpdateMediaRequest

Tin nhắn yêu cầu tải nội dung nghe nhìn lên.

Các trường
resource_name

string

Tên của nội dung nghe nhìn đang được tải xuống. Vui lòng xem ReadRequest.resource_name.

media

Media

Hình ảnh minh hoạ nội dung nghe nhìn đang được tải lên.

WriteRequest

Đối tượng yêu cầu cho ByteStream.Write.

Các trường
resource_name

string

Tên của tài nguyên cần ghi. Giá trị này phải được đặt trên WriteRequest đầu tiên của mỗi thao tác Write(). Nếu được đặt trong các lệnh gọi tiếp theo thì giá trị này phải khớp với giá trị của yêu cầu đầu tiên.

write_offset

int64

Độ lệch so với đầu tài nguyên mà dữ liệu sẽ được ghi. Đây là thuộc tính bắt buộc trên mọi WriteRequest.

Trong WriteRequest đầu tiên của thao tác Write(), giá trị này cho biết độ lệch ban đầu của lệnh gọi Write(). Giá trị phải bằng với committed_size mà lệnh gọi đến QueryWriteStatus() sẽ trả về.

Trong các lệnh gọi tiếp theo, giá trị này phải được đặt và phải bằng tổng của write_offset đầu tiên và kích thước của tất cả gói data đã gửi trước đó trên luồng này.

Giá trị không chính xác sẽ gây ra lỗi.

finish_write

bool

Nếu giá trị là true, thì mã này cho biết quá trình ghi đã hoàn tất. Việc gửi bất kỳ WriteRequest nào sau một thành phần có finish_writetrue sẽ gây ra lỗi.

data

bytes

Một phần dữ liệu cho tài nguyên. Ứng dụng có thể để trống data đối với mọi WriteRequest đã cho. Điều này cho phép ứng dụng thông báo cho dịch vụ rằng yêu cầu vẫn còn hiệu lực trong khi đang thực hiện một thao tác để tạo thêm dữ liệu.

WriteResponse

Đối tượng phản hồi cho ByteStream.Write.

Các trường
committed_size

int64

Số byte đã được xử lý cho tài nguyên đã cho.