本篇内容介绍了“Flask接收上传图片怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
思路整理:接收图片->定义一个图片存放的位置->给图片重命名(为了唯一性)->保存操作->返回状态
方案一:下面是复杂的写法:
basedir = os.path.abspath(os.path.dirname(__file__)) #定义一个根目录 用于保存图片用import os,sys,random,stringfrom 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
“Flask接收上传图片怎么实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!