如何将实际文件的这篇文章翻译成python请求?
我已经彻底地搜索了stackoverflow,但没有找到这个问题的答案 我正在努力为AsanaAPI做贡献。其思想是将文件作为任务的附件发布 在asana API中,指定上载的文件“需要是实际文件,而不是字节流。” 我有一个这样的工作卷发请求:如何将实际文件的这篇文章翻译成python请求?,python,post,curl,python-requests,asana,Python,Post,Curl,Python Requests,Asana,我已经彻底地搜索了stackoverflow,但没有找到这个问题的答案 我正在努力为AsanaAPI做贡献。其思想是将文件作为任务的附件发布 在asana API中,指定上载的文件“需要是实际文件,而不是字节流。” 我有一个这样的工作卷发请求: curl -u <api_key>: --form "file=@file.txt" https://app.asana.com/api/1.0/tasks/1337/attachments 来自asana。这可能完全相同,但您是否尝试在请
curl -u <api_key>: --form "file=@file.txt" https://app.asana.com/api/1.0/tasks/1337/attachments
来自asana。这可能完全相同,但您是否尝试在请求网站上的数据参数之外分配files参数:
url = 'http://httpbin.org/post'
files = {'file': open('report.xls', 'rb')}
r = requests.post(url, files=files)
您可以将
文件
参数传递给请求。post
用于表单编码文件上载。见下例:
import requests
KEY = ''
TASK_ID = ''
url = 'https://app.asana.com/api/1.0/tasks/{0}/attachments'.format(TASK_ID)
with open('file.txt') as f:
files = {'file': f.read()}
r = requests.post(url, auth=(KEY, ''), files=files)
print(r.status_code)
print(r.json())
不,这没什么区别。事实上,我已经按照你建议的方式实现了它,只是对问题进行了“解释”。对不起,没有看到你的答案。但你的应该行得通:)我已经能解决问题了。错误出现在
data={'file':open('valid_path_to_file.ext','rb')}
。它应该是files={'file':open('valid_path_to_file.ext','rb')}
。相当琐碎。
url = 'http://httpbin.org/post'
files = {'file': open('report.xls', 'rb')}
r = requests.post(url, files=files)
import requests
KEY = ''
TASK_ID = ''
url = 'https://app.asana.com/api/1.0/tasks/{0}/attachments'.format(TASK_ID)
with open('file.txt') as f:
files = {'file': f.read()}
r = requests.post(url, auth=(KEY, ''), files=files)
print(r.status_code)
print(r.json())