在 post 中传递 json 请求 python 以提交文件

pass json in post request python for commiting files

我正在尝试使用 Python 在 post 请求中传递 JSON。 下面是代码

from urllib2 import Request, urlopen        
values = """[{"n": "MyApexClass","r": false,"t": "ApexClass"},{"n": "SysAdmin","r": false,"t": "Profile"}]"""

request = Request('https://copado.herokuapp.com/json/v1/webhook/'
                'commitFiles/user_story_idapi_key=user_api_key&commitMessage=commitMessage', data=values)

response_body = urlopen(request).read()

print response_body

但是我遇到了以下错误

{"error":"Malformed payload, could not parse metadata json!!!"}

请帮帮我

尝试使用值而不是字符串,用作 python 对象

values = [
    {"n": "MyApexClass", "r": False, "t": "ApexClass"},
    {"n": "SysAdmin", "r": False, "t": "Profile"}
]

values = json.dumps(values).encode('utf8')

req = Request(your_url, data=values,
              headers={'content-type': 'application/json'})