formidable模块实现了上传和编码图片和视频。它支持GB级上传数据处理,支持多种客户端数据提交。
- 引入formidable模板
1 | var http = require("http"); |
- 创建服务器,然后通过GET方式获取到URL,继而找到我们在前台输入的路径
1 | var pathname = url.parse(req.url,true).pathname; |
- 创建一个名为upload的HTML,通过form实现图片上传
1 | <form action="/upload" method="post" enctype="multipart/form-data"> |
- 通过pathname可以判断用户是否提交信息。
var form = new formidable.IncomingForm();创建一个form表单
form里面的parse方法解析node.js中request请求中包含的form表单提交的数据,回调函数里面会有我们在前端提交的字段(fileds),以及图片的详细信息(files)。
返回的字段是一个对象,如果想保存到文档里面,需要解析成字符串。
如果想吧上传后的图片保存到文件夹里面,我们首先要回的图片的路径,然后看是否有这个文件夹,如果没有创建一个文件夹,将图片保存到该路径下,并已该图片的原始名命名
1 | if(pathname == "/upload"){ |