Tornado文件图片上传例子
发布:smiling 来源: PHP粉丝网 添加日期:2014-09-20 22:21:46 浏览: 评论:0
Tornado是一个和php有点像但又有不同的服务器脚本了,Tornado优点是它是非阻塞式服务器,而且速度相当快,下面来看个文件上传例子.
文件上传的内容体在tornado.web.RequestHandler.request.files属性中,并且是以数组形式存放的,使用临时文件存储时,在write完成后要记着把seek重置到文件头,要不然文件无法被读取.
再使用Image模块的thumbnail方法进行缩放时,resample=1作为重载渲染参数能够有效的使图片平滑,消除锯齿,代码如下:
- if self.request.files:
- for f in self.request.files['postfile']:
- rawname = f['filename']
- dstname = str(int(time.time()))+'.'+rawname.split('.').pop()
- thbname = "thumb_"+dstname
- # write a file
- # src = "./static/upload/src/"+dstname
- # file(src,'w+').write(f['body'])
- tf = tempfile.NamedTemporaryFile()
- tf.write(f['body'])
- tf.seek(0)
- # create normal file
- # img = Image.open(src)
- img = Image.open(tf.name)
- img.thumbnail((920,920),resample=1)
- img.save("./static/upload/postfiles/"+dstname)
- # create thumb file//开源软件:phpfensi.com
- img.thumbnail((100,100),resample=1)
- img.save("./static/upload/postfiles/"+thbname)
- tf.close()
Tags: Tornado文件上传 Tornado文件图片
- 上一篇:php完美的ereg验证文件上传
- 下一篇:PHP图片上传实例分析
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)