【问题标题】:Django Json data as stringDjango Json 数据作为字符串
【发布时间】:2018-10-28 19:22:36
【问题描述】:

我有一个项目,我必须从一个 API 端点获取 JSON 数据,然后从这个 JSON 数据中提取一些数据并将其发送到另一个 API。

我从第一个 API 得到这些数据:

response ={  
   "abc":"AP003",
   "data":[  
      {  
         "d":{  
            "e":"some data",
            "f":"some data"
         }
      }
   ]
}

我从中提取数据并将其发送到另一个视图。

response = response.json()
response = response['data']
return JsonResponse(json.dumps(response),safe=False)

即使下面的代码也不起作用

response = response.json()
response = response['data']
return JsonResponse(response,safe=False)

当我这样做时,我得到了响应,但我得到的数据是字符串形式而不是 JSON 形式。 如何获取 JSON 数据并按原样发送到模板?

编辑:

我有一个字符串格式的 JSON,我希望它以 JSON 形式发送 我的 API 响应

【问题讨论】:

  • 只是传递响应,不需要使用json转储
  • 如果我这样做,那么我会得到 '"/data/":/[ { / "/d/":/{ "e":"some data", "f":"some数据" } } ]'
  • @BugHunter 在每个字之后得到/
  • 你必须使用 data.json() 。
  • @UsmanMaqbool 它给出了错误。我已编辑问题以避免混淆。

标签: django python-2.7 django-views


【解决方案1】:

如果您有如下响应字典,则无需执行额外操作。您可以直接将其传递给 JsonResponse,它将被转换为 json。

response ={  
   "abc":"AP003",
   "data":[  
      {  
         "d":{  
            "e":"some data",
            "f":"some data"
         }
      }
   ]
}

return JsonResponse({"data": response['data']})

【讨论】:

    猜你喜欢
    • 2015-12-21
    • 1970-01-01
    • 2018-11-06
    • 2022-06-11
    • 2013-11-14
    • 2013-12-01
    • 1970-01-01
    • 2023-03-10
    • 2022-08-11
    相关资源
    最近更新 更多