Я хочу загрузить файл на удаленное устройство. Если я смотрю на связь с Wireshark я получаю этоКак изменить Content-Type Python
POST /saveRestore.htm.cgi HTTP/1.1
Host: 10.128.115.214
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:15.0) Gecko/20100101 Firefox/15.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://10.128.115.214/saveRestore.htm
Cache-Control: max-age=0
Content-Type: multipart/form-data; boundary=---------------------------961265085509552220604142744
Content-Length: 10708
-----------------------------961265085509552220604142744
Content-Disposition: form-data; name="restore"; filename="config(2).cfg"
Content-Type: application/octet-stream
Теперь это говорит о том, что, что браузер принимает только текст/HTML, приложение/XHTML + XML, приложение/XML; д = 0,9, /; д = 0,8
Если я загрузить файл с моим сценарием он говорит
--0a7125aebb8845ba8ab9aa21306b01f6
Content-Disposition: form-data; name="restore"; filename="Config.cfg"
Content-Type: text/plain; charset=utf-8
Так что это неправильный тип файла ..
, так как я могу изменить тип содержимого файла?
Мой код выглядит так далеко следующим образом:
#!/usr/bin/python
import httplib
import urllib2
from poster.encode import multipart_encode
import poster
from poster.streaminghttp import register_openers
register_openers()
params = {'restore': open("Config.cfg", "rb"), 'upload': 'PC ==>; Unit'}
datagen, headers = multipart_encode(params)
request = urllib2.Request('http://10.128.115.214/saveRestore.htm.cgi', datagen, headers)
u = urllib2.urlopen(request)
print u.read()
возможно дубликат [Неправильный тип контента при передаче файла с Python (плакат)] (http://stackoverflow.com/questions/12669274/wrong-content-type-when-transfering-file-with-python-poster) –
Это совершенно неясно. что такое сервер и что такое клиент, где вы задаете тип/расположение контента? – njzk2
Server 10.128.115.214 saveRestore.htm.cgi - это веб-интерфейс для загрузки и восстановления файлов ... И я пытаюсь сделать это со сценарием, а не над веб-интерфейсом ... и 1 wirehark появится, если я сделаю uplaod с webinterface ... и Content-Type файла неправильный, когда я делаю это со сценарием – VanDeath