Package google.bytestream

इंडेक्स

ByteStream

Byte Stream API का इस्तेमाल करके क्लाइंट, किसी संसाधन से मिलने और उससे मिलने वाले बाइट की स्ट्रीम को पढ़ और लिख सकता है. संसाधनों के नाम होते हैं और इन नामों की सप्लाई नीचे दी गई एपीआई कॉल में की जाती है. इससे उस रिसॉर्स की पहचान की जाती है जिससे पढ़ा जा रहा है या जिस पर लिखा जा रहा है.

Byte Stream API को लागू करने के सभी तरीके यहां दिए गए इंटरफ़ेस को एक्सपोर्ट करते हैं:

  • Read(): किसी संसाधन के कॉन्टेंट को पढ़ता है.

  • Write(): संसाधन के कॉन्टेंट को लिखता है. क्लाइंट एक ही संसाधन का इस्तेमाल करके, Write() को कई बार कॉल कर सकता है और QueryWriteStatus() को कॉल करके, जवाब की स्थिति देख सकता है.

ByteStream API, संसाधन से जुड़े किसी भी मेटाडेटा को ऐक्सेस करने या उसमें बदलाव करने का कोई सीधा तरीका नहीं देते.

सेवा से मिलने वाली गड़बड़ियां, Google कैननिकल गड़बड़ी स्पेस में मौजूद होती हैं.

लिखें

rpc Write(WriteRequest) returns (WriteResponse)

Write() का इस्तेमाल, संसाधन के कॉन्टेंट को बाइट के क्रम में भेजने के लिए किया जाता है. बाइट को क्लाइंट-साइड स्ट्रीमिंग आरपीसी के अनुरोध प्रोटो के क्रम में भेजा जाता है.

Write() कार्रवाई फिर से शुरू की जा सकती है. अगर Write() के दौरान कोई गड़बड़ी होती है या कनेक्शन टूट जाता है, तो क्लाइंट को QueryWriteStatus() पर कॉल करके Write() की स्थिति की जांच करनी चाहिए. साथ ही, लौटाए गए committed_size से लिखना जारी रखना चाहिए. यह क्लाइंट के भेजे गए पहले के डेटा की मात्रा से कम हो सकता है.

पहले से लिखे गए और फ़ाइनल किए गए रिसॉर्स के नाम पर Write() को कॉल करने से, गड़बड़ी हो सकती है. यह इस बात पर निर्भर करता है कि दी गई सेवा पहले से लिखे गए संसाधनों को ओवरराइट करने की अनुमति देती है या नहीं.

जब क्लाइंट, अनुरोध वाले चैनल को बंद कर देगा, तब सेवा को WriteResponse दिखेगा. जब तक क्लाइंट, finish_write को true पर सेट करके WriteRequest नहीं भेजता, तब तक सेवा को संसाधन को complete के तौर पर नहीं दिखेगा. 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

UpdateMedia

rpc UpdateMedia(UpdateMediaRequest) returns (Media)

मीडिया अपलोड करता है. अपलोड, यूआरआई /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

मीडिया संसाधन का नाम.

UpdateMediaRequest

मीडिया अपलोड करने के लिए मैसेज का अनुरोध करें.

फ़ील्ड
resource_name

string

डाउनलोड किए जा रहे मीडिया का नाम. ReadRequest.resource_name देखें.

media

Media

अपलोड किए जा रहे मीडिया का प्रतिनिधित्व.

WriteRequest

ByteStream.Write के लिए ऑब्जेक्ट का अनुरोध करें.

फ़ील्ड
resource_name

string

लिखने के लिए संसाधन का नाम. इसे हर Write() कार्रवाई के पहले WriteRequest पर सेट करना ज़रूरी है. अगर इसे बाद के कॉल पर सेट किया गया है, तो इसकी ज़रूरी पहले अनुरोध की वैल्यू से मेल खाना चाहिए.

write_offset

int64

संसाधन की शुरुआत से ऑफ़सेट, जिस पर डेटा लिखा जाना है. यह सभी WriteRequest के लिए ज़रूरी है.

Write() कार्रवाई के पहले WriteRequest में, यह Write() कॉल के लिए शुरुआती ऑफ़सेट दिखाता है. वैल्यू उस committed_size के बराबर होनी चाहिए जो QueryWriteStatus() को कॉल करने पर मिलेगी.

बाद के कॉल के लिए, यह वैल्यू सेट होनी चाहिए. साथ ही, यह पहले write_offset के कुल योग और इस स्ट्रीम पर पहले भेजे गए सभी data बंडल के साइज़ के बराबर होनी चाहिए.

गलत वैल्यू डालने पर गड़बड़ी होगी.

finish_write

bool

अगर true है, तो इसका मतलब है कि बदलाव पूरा हो गया है. जिस finish_write में true है उसके बाद कोई WriteRequest भेजने में गड़बड़ी होगी.

data

bytes

संसाधन के लिए डेटा का एक हिस्सा. क्लाइंट किसी दिए गए WriteRequest के लिए, data को खाली छोड़ सकता है. इसकी मदद से क्लाइंट, सेवा को यह जानकारी दे पाता है कि ज़्यादा डेटा जनरेट करने के लिए अनुरोध किए जाने के दौरान भी अनुरोध लाइव है.

WriteResponse

ByteStream.Write के लिए रिस्पॉन्स ऑब्जेक्ट.

फ़ील्ड
committed_size

int64

दिए गए संसाधन के लिए प्रोसेस किए गए बाइट की संख्या.