【问题标题】:Parse JSON nested data from Requests POST response从请求 POST 响应中解析 JSON 嵌套数据
【发布时间】:2025-08-11 07:25:04
【问题描述】:

我正在使用 Python(3.7) 开发一个项目,其中我必须使用 Requests 库解析从 POST 请求返回的 JSON。

我用谷歌搜索了很多,尝试了太多解决方案,但没有任何帮助,所以 请不要将此标记为重复!

这是我尝试过的:

def process_req(payload):
    try:
        headers = {
            'Content-Type': 'application/json'
        }
        data = payload
        resp = requests.post(
            'http://<EXAMPLE_URL>',
            data=data,
            headers=headers
        )
        print('returned data: {}'.format(resp.content.decode('utf8').replace("'", '"')))
        resp = resp.content.decode('utf8').replace("'", '"')

当我打印 resp 时,它提供以下 JSON:

{
    "code": "00",
    "message": "Successful",
    "data": "{\"requestId\":\"0012602\",\"responseCode\":\"68\",\"responseDescription\":\"Invalid Institution Code\"}"
}

现在,我需要访问该 JSON 的 data 字段,这是我尝试过的:

resp['data']

但它返回错误为:

字符串索引必须是整数

【问题讨论】:

标签: python json django python-requests


【解决方案1】:

您正在使用 resp.content 将数据作为原始字节检索。

改用resp.json()。这会将 JSON 解码为 Python 对象。

【讨论】:

  • 之后如何访问data 字段?