上传文件休息

时间:2010-07-01 12:08:12

标签: python rest upload file-upload

我使用django和活塞创建了一个rest api,我需要创建一个将文件上传到该api的脚本。

目前我正在使用此代码:

import urllib
import urllib2

user = 'patrick'
password = 'my_password'
url = 'http://localhost:8000/api/odl/'

password_manager = urllib2.HTTPPasswordMgrWithDefaultRealm()
password_manager.add_password(
    None, url, user, password
)

auth_handler = urllib2.HTTPBasicAuthHandler(password_manager)

opener = urllib2.build_opener(auth_handler)
urllib2.install_opener(opener)

f = open('test.pdf')

params = {
    'name': 'ODL Name',
}

postData = urllib.urlencode(params)
fh = urllib2.urlopen(url, postData)

当我运行此代码时,我可以看到params被发送到api,但我不知道如何将文件(f)发送到api :(

你能帮助我吗?

由于

1 个答案:

答案 0 :(得分:1)

您应该将文件的内容作为POST数据的一部分包含在内,并修改请求的标题,告诉服务器帖子中有文件。