Регистрация новой схемы в реестре схем с использованием запросов Python - PullRequest
0 голосов
/ 20 января 2019

Я пишу код Python, который создает схемы в реестре схем. Команда curl для регистрации новой версии в схеме:

curl -X POST "http://HOST:7788/api/v1/schemaregistry/schemas/test_schema/versions/upload?branch=MASTER"
    -H "accept: application/json" -H "Content-Type: multipart/form-data" 
    -F "file=@new_schema.txt;type=text/plain" -F "description=new version"

Iv'e протестировал команду, и она отлично работает, но мне не удается преобразовать ее в запросы Python.

вот мой код:

params = (
        ('branch', 'MASTER'),
    )

headers = {
    'accept': 'application/json',
    'Content-Type': 'multipart/form-data',
}

files = {
    'file1': ('schemas/new_schema.txt', open('schemas/new_schema.txt', 'rb'), 'text/plain'),
    'description': (None, 'new version'),
}

response = requests.post(
        'http://HOST:7788/api/v1/schemaregistry/schemas/test_schema/versions/upload',
        headers=headers, params=params, files=files)

Почему-то я получаю 500 ошибок. Я попытался отправить содержимое файла в виде данных, попытался отправить часть описания различными способами, но ни один из них не сработал. Я попытался также написать параметры как:

params = {'branch':'MASTER'}

но это также не удалось. Спасибо за любую помощь!

...