2010-07-01 110 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

相關問題