首页 > 解决方案 > 在 json 中发出不带双引号的 HTTP 请求

问题描述

我想通过包含如下 json 参数来使用 requests 库发出 POST HTTP 请求:

r = requests.post(url, json={"field1":"value1", "field2":"null", verify=False)

Field2 值必须为空,并且服务器需要不带双引号“空”的空。我还尝试将 null 分配给变量:

variable = "null"
r = requests.post(url, json={"field1":"value1", "field2":variable, verify=False)

但是请求是通过包含双引号来提出的。如何请求使 field2 的 json 值仅为空而没有引号?

谢谢。

标签: pythonjsonpython-requests

解决方案


首先,您的代码}之前缺少右括号verify=False

r = requests.post(url, json={"field1":"value1", "field2":"null"}, verify=False)
#                                                              ^

如果要将 JSON 字段设置为null,请将其 python 等效设置为None

import requests

r = requests.post(url, json={"field1": "value1", "field2": None}, verify=False)
#                                                            ^

推荐阅读