【发布时间】:2017-09-07 09:40:14
【问题描述】:
根据官方文档 curl 请求是
curl --request POST --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" --form "file=@dk.png" https://gitlab.example.com/api/v3/projects/5/uploads
我把它改成python并得到
import requests
headers = {
'PRIVATE-TOKEN': 'my_token'
}
form = {
'file': '@gaa.pdf'
}
print(requests.post('https://gitlab.com/api/v3/projects/4067343/uploads', headers=headers, form=form))
我有这样的回应
Traceback (most recent call last):
File "/home/k/pro/rat/try.py", line 19, in <module>
print(requests.post('https://gitlab.com/api/v3/projects/4067343/uploads', headers=headers, form=form))
File "/usr/local/lib/python3.5/dist-packages/requests/api.py", line 112, in post
return request('post', url, data=data, json=json, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/requests/api.py", line 58, in request
return session.request(method=method, url=url, **kwargs)
TypeError: request() got an unexpected keyword argument 'form'
我应该怎么做才能得到链接而不是错误的响应?
【问题讨论】:
-
你忘了说你遇到了什么问题。
-
已添加,谢谢))))
-
wget命令中的 Token 是被截断了还是你真正的 token ? -
这是来自文件的假冒,但我使用我的令牌
-
requests.post不支持form参数。请参阅this question 如何将curl的--form转换为Python 的请求。