Python-Json&;请求

Python-Json&;请求,python,json,python-2.7,dictionary,python-requests,Python,Json,Python 2.7,Dictionary,Python Requests,由于某些原因,请求没有成功执行,因此我打印负载以查看哪些参数作为json传递,我得到以下结果: import requests import json url='http://test.com/job/MY_JOB_NAME/build' params={'name':'BRANCH', 'value':'master', 'name':'GITURL', 'value':'https://github.test.com/test/test.git'} payload = json.dumps

由于某些原因,请求没有成功执行,因此我打印负载以查看哪些参数作为json传递,我得到以下结果:

import requests
import json

url='http://test.com/job/MY_JOB_NAME/build'
params={'name':'BRANCH', 'value':'master', 'name':'GITURL', 'value':'https://github.test.com/test/test.git'}
payload = json.dumps(params)
print payload
resp = requests.post(url=url, data=payload)

为什么我的负载缺少前两个json键值对?

您有两个相同的键,
name
value

更改名称

{"name": "GITURL", "value": "https://github.scm.corp.ebay.com/RPS/RPS.git"}
JSON就像Python中的字典一样。 它们是在Key=Value的基础上匹配的,每个Key都是uiniqiue标识符

params={'branch':'BRANCH', 'tree':'master', 'name':'GITURL', 'value':'https://github.test.com/test/test.git'}
如果另一头大象出现

x = {}
x['elephant'] = 1
但你不能这样做:

x['elephant'] += 1
因为,然后用大象的长相来代替大象的数量


您有两个相同的键,
名称

更改名称

{"name": "GITURL", "value": "https://github.scm.corp.ebay.com/RPS/RPS.git"}
JSON就像Python中的字典一样。 它们是在Key=Value的基础上匹配的,每个Key都是uiniqiue标识符

params={'branch':'BRANCH', 'tree':'master', 'name':'GITURL', 'value':'https://github.test.com/test/test.git'}
如果另一头大象出现

x = {}
x['elephant'] = 1
但你不能这样做:

x['elephant'] += 1
因为,然后用大象的长相来代替大象的数量


您有两个相同的键,
名称

更改名称

{"name": "GITURL", "value": "https://github.scm.corp.ebay.com/RPS/RPS.git"}
JSON就像Python中的字典一样。 它们是在Key=Value的基础上匹配的,每个Key都是uiniqiue标识符

params={'branch':'BRANCH', 'tree':'master', 'name':'GITURL', 'value':'https://github.test.com/test/test.git'}
如果另一头大象出现

x = {}
x['elephant'] = 1
但你不能这样做:

x['elephant'] += 1
因为,然后用大象的长相来代替大象的数量


您有两个相同的键,
名称

更改名称

{"name": "GITURL", "value": "https://github.scm.corp.ebay.com/RPS/RPS.git"}
JSON就像Python中的字典一样。 它们是在Key=Value的基础上匹配的,每个Key都是uiniqiue标识符

params={'branch':'BRANCH', 'tree':'master', 'name':'GITURL', 'value':'https://github.test.com/test/test.git'}
如果另一头大象出现

x = {}
x['elephant'] = 1
但你不能这样做:

x['elephant'] += 1
因为,然后用大象的长相来代替大象的数量


    • 这不是
      json.dumps的问题

      dict
      文本中,存在相同的键。密钥应该是唯一的

      x['elephant'] = 'has a trunk'
      
      使用不同的键,或按列表生成值:

      >>> {'a': 'b', 'a': 'c'}
      {'a': 'c'}
      
      或者使用字典列表:

      >>> {'a1': 'b', 'a2': 'c'}
      {'a1': 'b', 'a2': 'c'}
      >>> {'a': ['b' ,'c']}
      {'a': ['b', 'c']}
      

      这不是
      json.dumps
      的问题

      dict
      文本中,存在相同的键。密钥应该是唯一的

      x['elephant'] = 'has a trunk'
      
      使用不同的键,或按列表生成值:

      >>> {'a': 'b', 'a': 'c'}
      {'a': 'c'}
      
      或者使用字典列表:

      >>> {'a1': 'b', 'a2': 'c'}
      {'a1': 'b', 'a2': 'c'}
      >>> {'a': ['b' ,'c']}
      {'a': ['b', 'c']}
      

      这不是
      json.dumps
      的问题

      dict
      文本中,存在相同的键。密钥应该是唯一的

      x['elephant'] = 'has a trunk'
      
      使用不同的键,或按列表生成值:

      >>> {'a': 'b', 'a': 'c'}
      {'a': 'c'}
      
      或者使用字典列表:

      >>> {'a1': 'b', 'a2': 'c'}
      {'a1': 'b', 'a2': 'c'}
      >>> {'a': ['b' ,'c']}
      {'a': ['b', 'c']}
      

      这不是
      json.dumps
      的问题

      dict
      文本中,存在相同的键。密钥应该是唯一的

      x['elephant'] = 'has a trunk'
      
      使用不同的键,或按列表生成值:

      >>> {'a': 'b', 'a': 'c'}
      {'a': 'c'}
      
      或者使用字典列表:

      >>> {'a1': 'b', 'a2': 'c'}
      {'a1': 'b', 'a2': 'c'}
      >>> {'a': ['b' ,'c']}
      {'a': ['b', 'c']}
      


      字典只存储唯一的键。字典只存储唯一的键。字典只存储唯一的键。字典只存储唯一的键。如果我希望相同的键重复两次怎么办?还有其他选择吗?@PiHorse,你不能(用一个字典)。@PiHorse,我添加了一个使用
      list
      和字典项的选择。我尝试了,但是它改变了我请求参数中需要的json格式。@PiHorse,json字典(哈希表,对象)还要求键是唯一的。如果我希望相同的键重复两次怎么办?还有其他选择吗?@PiHorse,你不能(用一个字典)。@PiHorse,我添加了一个使用
      list
      和字典项的选择。我尝试了,但是它改变了我请求参数中需要的json格式。@PiHorse,json字典(哈希表,对象)还要求键是唯一的。如果我希望相同的键重复两次怎么办?还有其他选择吗?@PiHorse,你不能(用一个字典)。@PiHorse,我添加了一个使用
      list
      和字典项的选择。我尝试了,但是它改变了我请求参数中需要的json格式。@PiHorse,json字典(哈希表,对象)还要求键是唯一的。如果我希望相同的键重复两次怎么办?还有其他选择吗?@PiHorse,你不能(用一个字典)。@PiHorse,我添加了一个使用
      list
      和字典项的选择。我尝试了,但是它改变了我请求参数中需要的json格式。@PiHorse,json字典(哈希表,对象)还要求键是唯一的。如果我希望相同的键重复两次怎么办?还有其他选择吗?如果我希望相同的键重复两次怎么办?还有其他选择吗?如果我希望相同的键重复两次怎么办?还有其他选择吗?如果我希望相同的键重复两次怎么办?还有其他选择吗?