Форум сайта python.su
Доброго времени суток!
Нужно возвращать из cgi скрипта zip-файл. Делаю так:
print ‘Content-Type: application/zip’
print ‘Content-Disposition: attachment; name=“1.zip”\n’
print open('1.zip', ‘rb’).read()
получаю поврежденный архив. Думаю, это из-за того, что стандартный выводной поток открыт не в бинарном режиме, я прав? Как исправить?
Офлайн
используй фреймворк
Офлайн
Предвидел такой совет. Но, во-первых, без фреймворка весь код занимает 5 строчек, и незачем перегружать фреймворком, дальнейшее развитие не планируется, а во-вторых, чисто из интереса хотелось бы знать, в чем же загвоздка.
P.S. используя wsgi могу возвращать нормальные зипы, так что интерес скорее спортивный
Офлайн
Paherкогда будет работать, будет занимать 10..30 строк ;) , а с фреймворком в “одну” строку
Но, во-первых, без фреймворка весь код занимает 5 строчек
Офлайн
Под какой os вы это делаете? Если в windows, вы правы, поток идет не в бинарном режиме. Как исправить, уже обсуждалось, воспользуйтесь поиском.
Офлайн