Мне нужно опубликовать данные в REST API.Одно поле, incident_type
, должно быть передано в следующем формате JSON (должно включать квадратные скобки, а не просто фигурные скобки):
"incident_type_ids": [{
"name": "Phishing - General"
}],
Когда я пытаюсь форсировать это в своем коде, ононе совсем верноОбычно будут некоторые дополнительные экранированные кавычки (например, выходные данные: "incident_type_ids": "[\\"{ name : Phishing - General }\\"]"
), и я понял, что это потому, что я дважды кодировал данные JSON в переменной incident type
, чтобы принудительно добавить скобки (в строке 6, которая с тех порбыло закомментировано):
#incident variables
name = 'Incident Name 2'
description = 'This is the description'
corpID = 'id'
incident_type = '{ name : Phishing - General }'
#incident_type = json.dumps([incident_type])
incident_owner = 'Security Operations Center'
payload = {
'name':name,
'discovered_date':'0',
'owner_id':incident_owner,
'description':description,
'exposure_individual_name':corpID,
'incident_type_ids':incident_type
}
body=json.dumps(payload)
create = s.post(url, data=body, headers=headers, verify=False)
Однако, поскольку я закомментировал строку, я не могу получить incident_type
в нужном мне формате (в скобках).
Итак, мой вопрос: как я могу получить переменную incident_type
в правильном формате в конечном payload
?
Ввод, который я вручную получил для работы с помощью интерактивного REST API продукта:
{
"name": "Incident Name 2",
"incident_type_ids": [{
"name": "Phishing - General"
}],
"description": "This is the description",
"discovered_date": "0",
"exposure_individual_name": "id",
"owner_id": "Security Operations Center"
}
Я полагаю, что мой подход неверен, и я был бы признателен за любую помощь.Я новичок в Python, поэтому я ожидаю, что это ошибка новичка.
Спасибо за вашу помощь.