ExpressJs上传文件
来源:互联网 发布:unity3d 间隔重复执行 编辑:程序博客网 时间:2024/05/29 13:56
今天用ExpressJs上传文件的时候,搜了好多博文但是总是不成功,最后终于试成功了,真的很简单,只是有几个注意的点,这里就这些点简单介绍。
第一、我这是在windows 7的环境下,不知道linux环境下如何,不过应该大同小异了;
第二、在客户端的表单提交中记得添加这样一个属性,enctype=“multipart/form-data”,简单代码如下:
<form action="/uploadImg" method="post" id="upload" enctype="multipart/form-data"> <input type="file" name="uploadImg"/> <input type="submit" value="upload"/> </form>
第三、服务端读取文件,服务端读取文件跟读取表单的方式是类似的,req.files.元素name,若我们希望上传文件到默认的文件夹下(例如:./uploads),那么我们可以在app.js中的app.use(express.bodyParser())改成app.use(express.bodyParser(‘./uploads’)),在此注意:uploads目录必须存在,否则会报错;
第四、获取上传文件的基本信息,req.files.元素name.path:默认路径,.name:文件名,.size:文件大小等等
第五、如果要修改文件路径,需要用到fs文件,var fs = require("fs");如下服务端超级简单的代码:
app.post("/uploadImg",function(req,res){ console.log("文件默认属性:"+req.files.uploadImg); var obj = req.files.uploadImg; var tmp_path = obj.path; var new_path = "./public/images/"+obj.name; console.log("原路径:"+tmp_path); fs.rename(tmp_path,new_path,function(err){ if(err){ throw err; } }) });
其实这一段代码是获取默认路径tmp_path,设定目标新路径new_path,再调用fs.rename()即可将文件的默认路径改成目标路径,并且原路径中的文件必然就没了。
就那么简单。
- ExpressJs上传文件
- NodeJS教程--基于ExpressJS框架的文件上传
- ExpressJS介绍
- 文件上传---文件上传
- expressjs 源码研究
- ExpressJS中文文档
- ExpressJS入门指南
- nodejs npm安装expressjs
- Ansible + Vagrant + Expressjs (Mongodb)
- webstorm安装expressjs
- ExpressJS 4.0的新功能
- expressjs运行原理
- expressjs运行原理
- ExpressJs - 01 - nodemon
- 5分钟安装ExpressJS
- Nodejs expressjs 官网
- expressjs 与HTML
- Expressjs MySql sequelizejs
- 如何解决wordpress的更新版本 下载超时的问题
- Intervals of Monotonicity
- Mercurial(hg)
- JS正则表达式详解
- HDU4596 Yet another end of the world(数学公式推演+数论定理--2013南京邀请赛)
- ExpressJs上传文件
- 数据库的连接
- ubuntu 下FTP设置及常用命令
- 磁盘管理——RAID 10
- 跳转(2)-cscope
- Struts2 Bean级验证
- Tomcat 系统架构与设计模式
- 简单介绍java Enumeration 很多类都是实现了这个接口的 比如StringTokenizer类 方法很类似
- 《学生信息管理系统》的调试和错误解析