私は、でPOSTリクエストを受け入れるポート3000
でフラスコサーバーを実行しています。ただし、ファイルのアップロード部分は機能しません。私はkey
がfile
とvalue
に等しく、フォームデータとPOSTを送信していますpythonフラスコのファイルアップロードがサイレントに失敗する
@app.route('/upload', methods=['POST'])
def post_upload():
print ("test")
if request.method == 'POST':
print ("test2")
zfile = request.files['file']
if zfile:
print("test3")
filename = secure_filename(zfile.filename)
zfile.save(os.path.join(app.config['UPLOAD_FOLDER'],filename))
return "success"
else:
print ("test4")
return "fail"
return 'blah'
は、PNG画像です。クライアントが取得する応答は次のとおりです。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>400 Bad Request</title>
<h1>Bad Request</h1>
<p>The browser (or proxy) sent a request that this server could not understand.</p>
サーバー上のプリントアウトは、次のとおりです。
* Running on http://0.0.0.0:3000/ (Press CTRL+C to quit)
test
test2
104.148.224.253 - - [05/Aug/2017 19:30:04] "POST /upload HTTP/1.1" 400 -
それはzfile = request.files['file']
後に黙って失敗しているのはなぜ?
これを最初に試しました。 'No file part'という出力が出ます。私は 'key' =' file'と 'value'がPNG画像である形式でPOSTMANを使用しています。 – bee