我正在嘗試使api調用哪些具有json值作爲其中一個鍵。由於內部json形成了額外的雙引號,這是失敗的。Python JSON嵌套鍵值對解析
variable = request.GET.get('name', '{}')
該變量的值是從網頁傳遞的json。在可變
樣本數據將是這樣的: -
variable= {'name': 'ABC', 'Id': '1'}
現在,當我試圖形成我的有效載荷在後電話被髮送,
payload = {
'var1': var1,
'variable': variable,
}
現在被添加這個「變量」有效載荷被視爲字符串,並用雙引號追加,像這樣: -
{'var1': '130', 'variable': "{'name': 'ABC', 'Id': '1'}"}
但我想它到b e像這樣: -
{'var1': '130', 'variable': {'name': 'ABC', 'Id': '1'}}
任何建議如何使它成爲可能?
這是使後調用數據的代碼: -
r = requests.post("URL",data= json.dumps(payload),headers={'Authorization': obj.header, 'Content-type': 'application/json'}, proxies=getProxyDict())
這並不能解決問題。仍然雙引號添加在最終的有效載荷! – learner
你確定你在做'加載'而不是'轉儲'嗎?如果你打印'request.GET.get('name','{}')'你看到了什麼?最終的有效載荷是什麼樣的? ...另外,JSON使用雙引號而不是單引號字符串 – Anentropic
是的,我正在使用加載,它給了我這個錯誤: - ValueError:期望在雙引號括起來的屬性名稱:第1行第2列(char 1) 但是,如果我在該字符串的開始和結尾處添加「{」和「}」,它允許我加載它,但又不能解決問題。 – learner