亲宝软件园·资讯

展开

Flask接收上传图片

别把代码当饭吃 人气:0

接下来给搭建讲解Flask如何接受图片文件,上面是复杂写法,下面是简单写法,二选一即可。

思路整理:接收图片->定义一个图片存放的位置->给图片重命名(为了唯一性)->保存操作->返回状态

方案一:下面是复杂的写法:

basedir = os.path.abspath(os.path.dirname(__file__)) #定义一个根目录 用于保存图片用
import os,sys,random,string
from app import app,request,json,url_for
@app.route('/api/v1/ckeditorUpload',methods=['GET','POST'])
def editorData():
    #生成随机字符串,防止图片名字重复
    ran_str = ''.join(random.sample(string.ascii_letters + string.digits, 16))
    #获取图片文件 name = upload
    img = request.files.get('upload')
    #定义一个图片存放的位置 存放在static下面
    path = basedir+"/static/img/"
    #图片名称 给图片重命名 为了图片名称的唯一性
    imgName = ran_str+img.filename
    #图片path和名称组成图片的保存路径
    file_path = path+imgName
    #保存图片
    img.save(file_path)
    #这个是图片的访问路径,需返回前端(可有可无)
    url = '/static/img/'+imgName
    #返回图片路径 到前端
    return url 

方案二:下面是简单写法:

思路:接收图片 ->定义保存路径->获取名称->保存操作

basedir = os.path.abspath(os.path.dirname(__file__)) #定义一个根目录 用于保存图片用 
from app import app,request  
@app.route('/api/v1/ckeditorUpload',methods=['GET','POST'])
def editorData():
 
    #获取图片文件 name = upload
    img = request.files.get('upload')
 
    #定义一个图片存放的位置 存放在static下面
    path = basedir+"/static/img/"
 
    #图片名称 
    imgName = img.filename
 
    #图片path和名称组成图片的保存路径
    file_path = path+imgName
 
    #保存图片
    img.save(file_path)
 
    #url是图片的路径
    url = '/static/img/'+imgName
    return url

加载全部内容

相关教程
猜你喜欢
用户评论