Можем ли мы передать идентификатор схемы и версию, чтобы получить схему из реестра схем? Я знаю об этих функциях,
Получение схемы по идентификатору
sr = SchemaRegistryClient('localhost:8081')
my_schema = sr.get_by_id(schema_id=1)
, которая возвращает,
{'type': 'record', 'name': 'io.confluent.examples.clients.basicavro.Customer', 'fields': [{'name': 'customerId', 'type': 'string'}, {'name': 'firstName', 'type': 'int'}, {'name': 'lastName', 'type': 'string'}, {'name': 'email', 'type': 'string'}, {'name': 'phone', 'type': 'string'}], '__fastavro_parsed': True}
И,
Получение схемы по имени субъекта
sr = SchemaRegistryClient('localhost:8081')
my_schema = sr.get_schema(subject='mySubject', version='latest')
, которое возвращает
SchemaVersion(subject='mySubject', schema_id=1, schema=<schema_registry.client.schema.AvroSchema object at 0x000001A7271D6C18>, version=1)
В get_schema () я могу указать версию, но схема неверна. В get_by_id () я получаю схему в правильном формате, но не могу выбрать версию.
Можно ли как-то обойтись, чтобы я мог получить схему и выбрать версию? Любая помощь будет оценена.