Skip to main content
 首页 » 编程设计

python之pyrequests 将 dict 值编码为 JSON 中的列表

2025年05月04日12over140

我正在为 REST API 开发 Python 客户端,我正在使用 requests处理与服务器的通信。但是,当使用 post 方法时,我会遇到一些奇怪的行为。

这是发送请求的代码:

nombre = 'Daniel' 
email  = 'foo@bar.baz' 
 
object = { 
    'nombre': nombre, 
    'email': email 
} 
 
r = requests.post(some_url, 
                  json=object) 

现在我希望请求中的 JSON 格式类似于

{"nombre": "Daniel", "email": "foo@bar.baz"} 

但是我在 wireshark 中看到的是

{"nombre": ["Daniel"], "email": ["foo@bar.baz"]} 

服务器显然无法理解。我不确定这是否是图书馆的预期行为,但我不这么认为。我可以通过手动编码为 JSON 来解决它,但我觉得没有必要这样做。

请您参考如下方法:

试试这个

 import json 
 
 nombre = 'Daniel' 
 email  = 'foo@bar.baz' 
 
 object = { 
   'nombre': nombre, 
   'email': email 
 } 
 
  r = requests.post(some_url, 
              json=json.dumps(object))