2010-07-01 92 views
1

我使用django和piston创建了一个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

您应该包括内容的文件作为POST DA的一部分ta并修改请求的标题,以告诉服务器在帖子中有一个文件。

+0

谢谢:)我用这个“补丁”http://fabien.seisen.org/python/urllib2_file/;) – patrick 2010-07-01 20:28:14

相关问题