Package google.bytestream

Индекс

БайтСтрим

API Byte Stream позволяет клиенту читать и записывать поток байтов в ресурс и из него. Ресурсы имеют имена, и эти имена предоставляются в приведенных ниже вызовах API для идентификации ресурса, из которого выполняется чтение или запись.

Все реализации Byte Stream API экспортируют интерфейс, определенный здесь:

  • Read() : считывает содержимое ресурса.

  • Write() : записывает содержимое ресурса. Клиент может вызывать Write() несколько раз с одним и тем же ресурсом и проверять статус записи, вызывая QueryWriteStatus() .

API ByteStream не предоставляет прямого способа доступа или изменения каких-либо метаданных, связанных с ресурсом.

Ошибки, возвращаемые службой, находятся в каноническом пространстве ошибок Google.

Писать

rpc Write( WriteRequest ) returns ( WriteResponse )

Write() используется для отправки содержимого ресурса в виде последовательности байтов. Байты отправляются в последовательности протоколов запроса потокового RPC на стороне клиента.

Действие Write() возобновляется. Если во время Write() возникла ошибка или соединение разорвано, клиент должен проверить статус Write() , вызвав QueryWriteStatus() , и продолжить запись с возвращенного committed_size . Это может быть меньше объема данных, отправленных клиентом ранее.

Вызов Write() для имени ресурса, которое было ранее записано и финализировано, может вызвать ошибку, в зависимости от того, разрешает ли базовая служба перезапись ранее записанных ресурсов.

Когда клиент закрывает канал запроса, служба ответит WriteResponse . Служба не будет считать ресурс complete , пока клиент не отправит WriteRequest с finish_write установленным в true . Отправка любых запросов в потоке после отправки запроса с finish_write , установленным в значение true , приведет к ошибке. Клиенту следует проверить полученный ответ WriteResponse , чтобы определить, какой объем данных служба смогла зафиксировать и считает ли служба ресурс complete или нет.

Области авторизации

Требуется одна из следующих областей OAuth:

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

Дополнительную информацию см. в обзоре OAuth 2.0 .

RestByteStream

ОбновлениеМедиа

rpc UpdateMedia( UpdateMediaRequest ) returns ( Media )

Загружает медиа. Загрузка поддерживается по URI /upload/v1/media/{+name} .

Области авторизации

Требуется одна из следующих областей OAuth:

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

Дополнительную информацию см. в обзоре OAuth 2.0 .

СМИ

Медиа-ресурс.

Поля
resource_name

string

Название медиаресурса.

ОбновлениеМедиаЗапрос

Сообщение с запросом на загрузку мультимедиа.

Поля
resource_name

string

Имя загружаемого носителя. См. ReadRequest.resource_name .

media

Media

Представление загружаемого носителя.

Запрос на запись

Объект запроса для ByteStream.Write.

Поля
resource_name

string

Имя ресурса для записи. Это должно быть установлено при первом WriteRequest каждого действия Write() . Если оно установлено при последующих вызовах, оно должно соответствовать значению первого запроса.

write_offset

int64

Смещение от начала ресурса, в который должны быть записаны данные. Это требуется для всех WriteRequest .

В первом WriteRequest действия Write() указывается начальное смещение для вызова Write() . Значение должно быть равно значению committed_size , которое вернет вызов QueryWriteStatus() .

При последующих вызовах это значение должно быть установлено и должно быть равно сумме первого write_offset и размеров всех пакетов data , отправленных ранее в этом потоке.

Неправильное значение приведет к ошибке.

finish_write

bool

Если true , это означает, что запись завершена. Отправка любого WriteRequest после того, в котором finish_write имеет значение true , приведет к ошибке.

data

bytes

Часть данных для ресурса. Клиент может оставить data пустыми для любого данного WriteRequest . Это позволяет клиенту информировать службу о том, что запрос все еще активен, пока выполняется операция по созданию дополнительных данных.

НаписатьОтвет

Объект ответа для ByteStream.Write .

Поля
committed_size

int64

Количество байтов, обработанных для данного ресурса.