Разместите список Python на сервере Node.js, ожидающем полезную нагрузку, состоящую из массива, содержащего JSON
Я пытаюсь отправить запрос POST (в Python) на сервер, который ожидает массив, содержащий JSON. Кажется, я не могу правильно отформатировать данные. Как я могу отформатировать следующую полезную нагрузку, чтобы она работала как массив JavaScript для сервера Node.js?
POST / API / Adduser/
Ожидаемый Node.js
[
{'user':'jon','email':'[email protected]'},
{'user':'jon2','email':'[email protected]'}
]
Мой текущий код:
import requests
import json
payload = \
[
{
'user': 'hello',
'email': '[email protected]'
},
{
'user': 'helloAgain',
'email': '[email protected]'
}
]
res = requests.post('http://localhost/api/users', data=json.dumps(payload))
#res -> 400 error -> reason: "wrong json format - must be an array"
2 ответа
Ваша ожидаемая полезная нагрузка неверна (это не JSON). Сэкономьте массу головных болей и используйте json
модуль:
import json
res = requests.post('http://localhost/api/users', data=json.dumps(payload))
Вот решение:
POST / API / Adduser/
Ожидаемый Node.js
[
{'user':'jon','email':'[email protected]'},
{'user':'jon2','email':'[email protected]'}
]
Мой текущий код:
import requests
import json
payload = \
[
{
'user': 'hello',
'email': '[email protected]'
},
{
'user': 'helloAgain',
'email': '[email protected]'
}
]
jsonPayload = json.dumps(payload)
headers = {'Content-Type': 'application/json'}
res = requests.post('http://localhost/api/users', data=jsonPayload, headers=headers)