Я пытаюсь отправить запрос POST JSON с использованием Python и, похоже, получаю ошибку 400 с ошибкой синтаксического анализа. Этот же запрос прекрасно работает в Почтальоне. Я не могу понять, что я делаю неправильно, и ценю любые указатели.
Тело запроса почтальона, которое работает:
{
"document":
{
"name": "TestWebiDOC_doc",
"folderId":1112223}
}
Сообщение об ошибке, что я получение от службы REST при использовании Python:
{"error_code":"400","message":"ParseError at [row,col]:[0,1]\nMessage: A JSONObject text must begin with '{' at character 1 of \"{\\\"document\\\": {\\\"name\\\": \\\"TestWebiDOC_doc\\\", \\\"folderId\\\": \\\"1112223\\\"}}\". "}
Python Код Ниже для отправки запроса JSON - не удается сузить, что я делаю неправильно:
def create_document(token):
data = {
'document':
{
'name' : 'TestWebiDOC_doc',
'folderId' : '1112223'}
}
headers = {'Content-Type' : 'application/json',
'Accept' : 'application/json',
'X-SAP-LogonToken' : token}
path = _url('/documents/')
response = requests.post(path, json=json.dumps(data), headers=headers)
print(response.text)
print('\nURL to create document : {}'.format(path))
if response.status_code != 200:
print('\nUnable to create document: {}'.format(response.status_code))
else:
document_id = response['success']['id']
print('\nCreated document with id : {}'.format(document_id))
return document_id