azure 避免对通过Python SDK发送到事件中心的数据进行base64编码

lyfkaqu1  于 2022-12-24  发布在  Python
关注(0)|答案(1)|浏览(126)

我正在向Azure Event Hub发送一个json对象(Python),该对象通过Event Hub的事件捕获功能路由到Blob存储。此文件存储在Apache AVRO中。当我在联机AVRO阅读器上上载文件时,我看到类似以下内容.. AVRO Reader Snip
实际数据位于映像的正文中。我不希望Azure Event Hub将我的数据编码为base64。我应该对下面的代码进行哪些更改。

producer = EventHubProducerClient.from_connection_string(conn_str=EVENTHUB_CONNECTION_STR, eventhub_name=eventhub)
    
    async with producer:
        dictionary_obj = {}
        dictionary_obj['id'] = 1
        dictionary_obj['Name'] = 'Alex'
        dictionary_obj['Attr1'] = 1
        MESSAGE = json.dumps(dictionary_obj)
        event_data_batch = await producer.create_batch()
        event_data_batch.add(EventData(MESSAGE))
        await producer.send_batch(event_data_batch)
        await producer.close()
8hhllhi2

8hhllhi21#

Azure事件中心将消息体中的数据作为不透明字节数组处理。在avro写入之前,它从不对其进行编码。

相关问题