0
十分な空き容量があるかどうかを確認するために、ファイルをS3にアップロードする前にファイルのサイズを確認します。次のコードは動作します。ただし、S3にアップロードされたファイルは空です。ファイルのサイズをチェックする部分を削除すると、ファイルが正しくアップロードされます。ファイルサイズを取得する別の方法はありますか?このファイルはHTMLページのアップロードフォームから取得したもので、まずサーバーに保存せずにS3に直接アップロードします。当然のファイルのサイズが読み込まれた後にファイルが空になっています
availablestorage = getavailablestorage() #gets the available storage in bytes
latestfile = request.files['filetoupload'] #get the file from the HTML form
latestfile.seek(0,2)
latestsize = latestfile.tell() #this gets the size of the file
if availablestorage < latestsize:
return "No space available. Delete files."
bucketname = request.form.get('spaceforupload')
conn = boto3.client('s3')
conn.upload_fileobj(latestfile, bucketname, latestfile.filename)
return redirect(url_for('showspace', spacename=bucketname))
時にはとても簡単です。ありがとうございました。 – user3080315