2013-11-27 19 views
5

Sunucumun python flaskında dosya ve bazı meta bilgilerle çalışmasını istiyorum. Bu yüzden benim istek içerik-Tür 'multipart/form-data olacaktır. Görüntü/jpg, resim/gif vb. Gibi dosya türlerini ayarlayabilmenin bir yolu var ... Dosya için içerik türünü nasıl ayarlayabilirim. mümkün mü yoksa her dosya belirtimleri başlığın yaparsanız değilPython istekleri içindeki tekil dosyalar için Content-Type yazın

+0

Bir şey denediniz mi? Bu belgelere açıklanacak bir şey gibi geliyor. –

+0

@SimeonVisser: Bu mümkün olsa da, aslında hiçbir yerde * belgelenmez. –

+0

@MartijnPieters: yeterince adil, aşağıdaki soruya cevap vermişsiniz gibi görünüyor. –

cevap

13

, üçüncü parametre olarak mim türü belirtebilir:

files = { 
    'file1': ('foo.gif', open('foo.gif', 'rb'), 'image/gif'), 
    'file2': ('bar.png', open('bar.png', 'rb'), 'image/png'), 
} 
response = requests.post(url, files=files) 

Siz de bir 4 parametre verebilir, bir sözlük olmalıdır her parça için ek başlıklarla.

+0

Artık geçerli olmayan son sürümleri olan – Khertan

+1

@Khertan: bunu ne düşünüyorsun? [Belgeler] (http://docs.python-requests.org/en/latest/user/advanced/#post-multiple-multipart-encoded-files) hala aynıdır. Orada gösterildiği gibi hem bir '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ' –

+1

@Khertan: Bunu sadece master şubesiyle denedim ve bu hala burada gösterdiğim gibi çalışıyor. –