Firefox表单提交断开套接字

时间:2017-12-29 21:53:27

标签: forms sockets firefox flask

我正在Javascript中创建一个基本表单,以便将图像提交给Flask驱动的服务器。

form  = document.createElement('FORM');
form.method = 'POST';
form.enctype = 'multipart/form-data';

...

var input = document.createElement('INPUT');
input.setAttribute('type','file');
input.setAttribute('accept','.jpg, .jpeg, .png');
input.addEventListener('change', handleFiles, false);
input.name = 'file';

然后我有一个按钮,点击后提交表单:

function fileSubmitClick() {
    form.submit();
}

问题是在提交表单时Firefox上发生了奇怪的事情:(1)套接字通信断开; (2)清除Javascript控制台。这些都不会发生在Chrome或Safari上。

供参考,以下是我在Flask上处理表单提交的方式:

@app.route('/', methods=['POST'])
def upload_file():
    if 'file' not in request.files:
        print('No file part')
        return ('',204)
    file = request.files['file']
    if file.filename == '':
        print('No selected file')
        return ('',204)
    filename = secure_filename(file.filename)
    file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
    return ('',204)

0 个答案:

没有答案