3

トルネード Web サーバー。

質問があります。

どうすれば tornado Web サーバーからファイルをダウンロードできますか?

これは私のコードです。

def get(self):
    data = self.xls_f()
    self.set_header('Content-Type', 'application/apk')
    self.set_header('Content-Disposition', 'attachment; filename=%s' % 'test.apk')
    f = file('test.apk') 
    self.write(f.read())
    self.finish()
  1. 「asdfafasfd ㅁ ㅁ ㅇㄴㅁㄹㅁㄹㄴ」のような読めない内容のファイルを取得しました。おそらくこれ('\n')は読めません。

  2. apk、画像ファイルなどダウンロードできますがファイルサイズが0kか1kです。

どうすれば多くの種類のファイル (画像、apk など) をトルネード Web サーバーからダウンロードできますか?

ソースコードのサンプルが欲しい。お願いします。

4

2 に答える 2

4

以下のコードは、csv ファイルのダウンロード用にアプリで使用したトルネード サーバーからファイルをダウンロードするためのものです。それはあなたを助けるかもしれません。

def post(self,filename):
    print('i download file handler : ',filename)

    ifile  = open(filename+".csv", "r")
    self.set_header ('Content-Type', 'text/csv')
    self.set_header ('Content-Disposition', 'attachment; filename='+filename+'')
    self.write (ifile.read())
于 2013-02-15T07:33:53.517 に答える
0

バイナリ ファイルの場合は、次のようにする必要があります。

f = file('test.apk', 'rb')
于 2013-11-03T06:39:02.263 に答える