Я использую REST API сайта и в основном использую Python модуль «запросов» для получения json ответов. Цель запросов GET состоит в том, чтобы в конечном итоге получить ответ от пользовательской формы, который в итоге становится сложным json документом. Чтобы справиться с этим:
user_form_submission = requests.get('https://www.url/doc.json',
auth = (api_key, secret),
params = params)
python_obj = json.loads(user_form_submission.text)
trimmed_dict = python_obj['key'][0]['keys']
Для контекста это будет выглядеть как trimmed_dict в формате. json:
{
"Date": { "value": "2020-04-26", "type": "date" },
"Location": {
"value": "Test ",
"type": "text",
"geostamp": "lat=34.00000, long=-77.00000, alt=17.986118, hAccuracy=65.000000, vAccuracy=10.000000, timestamp=2020-04-26T23:39:56Z"
},
"form": {
"value": [
{
"form_Details": {
"value": [
{
"code": {
"value": "0000000000",
"type": "barcode"
},
"Name": { "value": "bob", "type": "text" }
}
],
"type": "group"
},
"Subtotal": { "value": "4", "type": "decimal" },
"form_detail2": {
"value": [
{
"name": {
"value": "billy",
"type": "text"
},
"code": {
"value": "00101001",
"type": "barcode"
},
"Classification": {
"value": "person",
"type": "select1"
},
"Start_Time": { "value": "19:43:00", "type": "time" },
"time": { "value": "4", "type": "decimal" }
}
],
"type": "subform"}
}
]
}
}
Теперь у меня есть часть json в котором содержится как полезное, так и бесполезное. С этого момента я могу передать этот объект в POST? Я старался изо всех сил подходить к нему и был отключен.
Понимание того, как я хочу go об этом, вот как я думал, что это будет go:
json_post = requests.post(' https://url/api/doc.json',
auth = (api_key, secret),
json = {
"form_id" : 'https://url.form.com/formid',
'payload':{
json.dumps(trimmed_dict)
}})
Но, когда я делаю это, я получаю следующую ошибку -
TypeError: Object of type set is not JSON serializable
Как я могу сделать sh этот дикт через этот POST? Если есть более эффективный способ сделать это, я очень открыт для предложений.