我在linux中使用curl将数据发布到asana并且工作正常。
curl -H "Authorization: Bearer <mytoken>" https://app.asana.com/api/1.0/tasks/101/stories -d "text=hello world"
但如果我使用python的请求库,那么结果就是400
response = requests.post("https://app.asana.com/api/1.0/tasks/101/stories", auth=(self.asana.token_uri, ""), params = "text=repo_name")
答案 0 :(得分:0)
您需要添加相同的&#34;授权:承载&#34;令牌标头在python中的请求。与此答案类似:
答案 1 :(得分:0)
auth
方法的requests
参数会生成Authorization: Basic
标头,而不是Authorization: Bearer
标头。
使用手动创建的headers
标头设置Authorization
字典。 POST数据(curl的-d
命令行开关)应作为字典传递给data
参数:
response = requests.post(
"https://app.asana.com/api/1.0/tasks/101/stories",
headers={'Authorization': 'Bearer {}'.format(self.asana.token_uri),
data={'text': 'repo_name'})