3

我正在尝试上传文件,但浏览器微调器永远滚动,服务器日志不显示更新并且文件没有上传。这肯定是一个新手错误,但我不知道那是什么:-

静态/index.html :-

html
form action="http://127.0.0.1:5000/upload" method="post" enctype="multipart/form-data"
  input type="file" name="db"/
  input type="submit" value="upload"/
/form
html

应用程序.py

from flask import Flask
from flask import request
from werkzeug import secure_filename

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello World!'

@app.route('/upload', methods=['GET', 'POST'])
def upload_file():
    print 'upload_file'
    if request.method == 'POST':
        print 'post'
        f = request.files['db']
        f.save(secure_filename(f.filename))

if __name__ == '__main__':
    app.run(debug=True)

谢谢

环境:Flask 0.9、Jinja2-2.6 和 Werkzeug-0.8.3 和 Python 2.7 在 Win7 x64 和 IE9 和 Chrome

4

1 回答 1

2

文档说你应该使用enctype="multipart/form-data".

另外,我可能会尝试method="POST"(大写),如果只是因为防御性编码是一个好习惯,这里的防御性策略并不是假设 Flask 没有错误。

于 2012-10-13T22:06:40.073 回答