为什么高级REST客户机返回的json与Python中Requests模块返回的json不同?

2024-10-16 22:26:49 发布

您现在位置:Python中文网/ 问答频道 /正文

弧:

https://chrome.google.com/webstore/detail/advanced-rest-client/hgmloofddffdnphfgcellkdfbfbjeloo?hl=en-US

我将返回的json保存在一个.json文件中,并使用以下命令将其转换为一个数据帧:

temp_json = pd.read_json('TempJson.json', orient='columns')

这很有效。 但后来我使用了Python2.7.13中的请求模块,具体来说:

myResponse = requests.post(url, json= payload, headers = headers)
jData = json.loads(myResponse.content)

1)json结构与tempïu json有很大不同;2)它完全破坏了我的代码。知道为什么吗?你知道吗

来自临时json的代码段:

{
  "expand": "schema,names",
  "startAt": 0,
 "maxResults": 250,
  "total": 3,
  "issues": [
{
  "expand": "operations,editmeta,changelog,transitions,renderedFields",
  "id": "1954523",
  "key": "SPGC-14075",
  "fields": {"summary": "QA: Build concentration support into CDC automation",
    "issuetype": {
      "self": "https://itec-jira.fmr.com/rest/api/2/issuetype/20",
      "id": "20",
      "description": "Default sub-task",
      "iconUrl": "https://itec-
 jira.fmr.com/images/icons/issuetypes/subtask_alternate.png",
      "name": "Sub task",
      "subtask": true

python json示例:

{
  "issues": [
{
  "key": "SPGC-25646",
  "fields": {
    "status": {
      "statusCategory": {
        "name": "To Do",
        "self": "https://itec-jira.fmr.com/rest/api/2/statuscategory/2",
        "id": 2,
        "key": "new",
        "colorName": "blue-gray"
      },.....

Tags: keyhttpscomrestidjsonjiratemp
1条回答
网友
1楼 · 发布于 2024-10-16 22:26:49

json.loads将创建一个python dict,该dict经过哈希处理,因此内容将按加扰顺序排列。检查一下json.loads文件为请求和临时文件返回相同的dict。如果它们不同,那么数据就不同。您可以使用pretty print库来帮助调试深度嵌套的json。你知道吗

相关问题 更多 >