Как я могу вызвать API сообщений с python, используя более одного или ни одного значения, поступающего из БД, вместо жесткого кодирования значений в моей полезной нагрузке? Это означает, что всякий раз, когда я вызываю post API, значение полезной нагрузки [id] может изменяться в соответствии с идентификатором или идентификаторами, сгенерированными из запроса SQL. Когда я жестко кодирую его и передаю одно значение в свою полезную нагрузку, он работает:
dictionary={"profile_fields": {"name":["email", "address"]},"filters": {"id": "AB1"}}
Но когда я не хочу жестко кодировать его и вместо этого использовать имя переменной, используемое для запроса моей БД, Я не получаю результатов и не вижу ошибок.
dictionary={"profile_fields": {"name": ["email","address"]},"filters": {"id":
df}}
Спасибо за вашу помощь.
Sql пример вывода:
col1:
AB1
AB2
Пример кода Python 3:
c = con.cursor()
# sql query from sqlite, the output can be 1 vaue or two or even empty
c.execute('select col1 from t1 where col1 = col2')
df=c.fetchall()
print('checking the output of sql',df)
#print output:
# [('AB1',), ('AB2',)]
# data payload
dictionary={"profile_fields": {"name": ["email", "address"]},"filters": {"id": df}}
# url
url='https://...'
#post api call
response= response.post(url,json=dictionary,...)
if (responce.status_code == 200):
#response back in JSON format
df = response.json()
print('Success!')
else:
print('error.. ')