0

FlaskとAutoIndexを使用しています。AutoIndexで指定したディレクトリのURLにアクセスすると、ディレクトリ内のファイルが正常に表示されます。しかし、ファイルをクリックして表示すると、ブラウザが自動的にファイルをダウンロードします。クリックするとプレーンテキストファイルとして表示したいだけです。

4

2 に答える 2

0

content-typeヘッダーを'text/ plain'に設定するには、応答を変更する必要があります。また、content-dispositionヘッダーを削除または書き換える必要もあります。

そのようなファイルを提供するために新しいビューを作成し、ビューへのリンクを指すようにAutoIndexを変更または構成する必要がある場合があります。

于 2012-12-20T13:37:54.890 に答える
0

send_from_directoryを使用できます。例:

# -*- coding: utf-8 -*-

from flask import Flask, send_from_directory


app = Flask(__name__)


@app.route('/open')
def open():
    """Open in browser"""
    return send_from_directory('/tmp/', 'hello.txt')


@app.route('/download')
def download():
    """Download"""
    return send_from_directory('/tmp/', 'hello.txt', as_attachment=True)


if __name__ == '__main__':
    app.run(debug=True)
于 2012-12-21T06:23:10.360 に答える