Flask app 配置
配置內(nèi)容:文件夾路徑,運(yùn)行的文件類型,文件大小限制
from
flask
import
Flask
FILE_FOLDER
=
'path/to/file_folder'
ALLOWED_EXTENSIONS
=
set
(
[
'png'
,
'jpg'
,
'jpeg'
]
)
app
=
Flask
(
__name__
)
app
.
config
[
'UPLOAD_FOLDER'
]
=
FILE_FOLDER
app
.
config
[
'MAX_CONTENT_LENGTH'
]
=
16
*
1024
*
1024
上傳及下載文件
from
backend
import
ALLOWED_EXTENSIONS
,
app
,
FILE_FOLDER
from
flask
import
request
,
send_file
,
Blueprint
from
werkzeug
.
utils
import
secure_filename
import
os
blueprint
=
Blueprint
(
'file'
,
__name__
)
def
allowed_file
(
filename
)
:
return
'.'
in
filename
and
\
filename
.
rsplit
(
'.'
,
1
)
[
1
]
.
lower
(
)
in
ALLOWED_EXTENSIONS
def
upload_file
(
file_id
)
:
if
'file'
not
in
request
.
files
:
return
False
,
"No file part"
file
=
request
.
files
[
'file'
]
if
file
.
filename
==
''
:
return
False
,
"No selected file"
if
file
and
allowed_file
(
file
.
filename
)
:
filename
=
secure_filename
(
file
.
filename
)
save_name
=
f
"{file_id}-{filename}"
file
.
save
(
os
.
path
.
join
(
app
.
config
[
'UPLOAD_FOLDER'
]
,
save_name
)
)
return
True
,
save_name
@blueprint
.
route
(
'/
'
,
methods
=
[
'GET'
]
)
def
download_file
(
file_name
)
:
if
'/'
in
file_name
:
return
'error'
,
400
if
file_name
:
return
send_file
(
f
"{FILE_FOLDER}/{file_name}"
,
attachment_filename
=
'file.jpg'
)
return
'error'
,
400
Flask file upload 官方文檔
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
