Html表单以json文件作为输入
这是我的脚本,我可以获得文件作为输入,但无法读取。
from flask import Flask, render_template, request, redirect, jsonify, json
import os
app=Flask(__name__)
app.config["FILE_UPLOAD"]=""
@app.route('/')
def index():
return render_template("form.html")
@app.route('/', methods = ['GET', 'POST'])
def upload_file():
if (request.method == 'POST'):
jf =request.files["file"]
jf.save(os.path.join(app.config["FILE_UPLOAD"], jf.filename))
print("file uploaded")
jdata=json.load(jf)
response = jsonify(jdata)
return response
if __name__ == "__main__":
app.run(debug=True)
您不需要将文件保存到本地。Jf是io.BytesIO,所以我们只需要decode和json.loads就可以转换为json。试试看:
jf =request.files["file"]
data = jf.read().decode("utf8")
jdata = json.loads(data)
return jsonify(jdata)