Необходимо передать несколько переменных в переменные полезной нагрузки - PullRequest
0 голосов
/ 10 июля 2019

Я пытаюсь передать несколько переменных в полезную нагрузку, используя формат & + str (Var) +, но я не получаю ожидаемый результат. У меня есть имена хостов в файле, я получаю пароль и хочу передать его в полезную нагрузку.

Я получаю ошибку, связанную с "Error while parsing JSON payload or an incompatible argument type for the requested resource"

for x in content:
        url='https://url/a/b/c/{}'.format(x.strip())
        payload=('{{"ip-address": "x.x.x.x","user-name": "john","password": "'+ str(Pass) +'","db-name": "'+ str(x.strip()) +'","service-name": "y","port": "y","connection-string": "y"}}')
        response = req.post(url,json=payload,headers=add_cookie,verify=False)


======================

for x in content:
        url='https://url/a/b/c/{}'.format(x.strip())
        payload={"ip-address": "x.x.x.x","user-name": "john","password": "{}","db-name": "{}","service-name": "y","port": "y","connection-string": "y"}.format(Pass, x.strip())
        response = req.post(url,json=payload,headers=add_cookie,verify=False)

1 Ответ

0 голосов
/ 10 июля 2019

В первой части ваша полезная нагрузка является строкой, а не диктатом, она должна быть

payload={"ip-address": "x.x.x.x","user-name": "john","password": str(Pass),"db-name": str(x.strip()),"service-name": "y","port": "y","connection-string": "y"}

Во втором вы используете функцию форматирования для неправильного типа dict.

...