我知道这个问题一遍又一遍地被问到了,但是不知何故这些答案都对我没有用。 我正在使用flask编写一个Web应用程序,该烧瓶调用Web API(我已经做到了)并发布图像。但是每次我尝试发布图像时,它都会返回Bad Request。不知道我要去哪里错了。
添加代码段。
网络应用:app.py
@app.route('/success', methods = ['POST'])
def success():
if request.method == 'POST':
f = request.files['file']
image_path = os.path.join("images",f.filename)
f.save(image_path)
image_filename = os.path.basename(image_path)
multipart_form_data = {
'files': (image_filename, open(image_path, 'rb'))
}
response = requests.post(url, files=multipart_form_data)
print(response.status_code)
return "Success!!"
网络应用:用于上传图片文件的HTML表单
</!DOCTYPE html>
<html>
<head>
<title>Upload new File</title>
</head>
<body>
<h1>Upload new File</h1>
<form method="post" enctype="multipart/form-data" action="\success">
<input type="file" name="file" accept="image/*">
<input type="submit" value="Upload">
</form>
</body>
</html>
Web API:app.py
@app.route("/home/<int:clusters>", methods=["POST"])
def home(clusters):
print("Success")
return jsonify(dmcolor.start(request.files['files'], clusters))
已部署API的网址:https://damp-wave-49064.herokuapp.com/home/5 正如我使用Postman测试过的那样,API正在工作。
我刚刚开始学习Flask,我们将不胜感激。