zoukankan      html  css  js  c++  java
  • Node.js Express 框架2

    文件上传

    以下我们创建一个用于上传文件的表单,使用 POST 方法,表单 enctype 属性设置为 multipart/form-data。

    index.html

    <html>
    <head>
    <title>文件上传表单</title>
    </head>
    <body>
    <h3>文件上传:</h3>
    选择一个文件上传: <br />
    <form action="/file_upload" method="post" enctype="multipart/form-data">
    <input type="file" name="image" size="50" />
    <br />
    <input type="submit" value="上传文件" />
    </form>
    </body>
    </html>
    

      

    server.js

    var express=require('express');
    var app=express();
    var bodyParser=require('body-parser');
    
    var fs=require('fs');
    var multer=require('multer');
    
    app.use(express.static('public'));
    //创建application/x-www-form-urlencoded编码解析
    app.use(bodyParser.urlencoded({extended:false}));
    app.use(multer({dest:'/tmp/'}).array('image'));
    
    var server=app.listen(8081,onRequest);
    
    app.post('/file_upload',function(req,res){
    	
    	console.log(req.files[0]);//上传文件信息
    	
    	var des_file=__dirname+'/'+req.files[0].originalname;
    	fs.readFile(req.files[0].path,function(err,data){
    		fs.writeFile(des_file,data,function(err){
    			if(err){
    				console.log(err);
    			}else{
    				response={
    					message:'File upload successfully',
    					filename:req.files[0].originalname
    				};
    			}
    			console.log(response);
    			res.end(JSON.stringify(response));
    		});
    	});
    });
    
    app.get('/index.html',function(req,res){
    	res.sendFile(__dirname+'/'+'index.html');
    });
    
    function onRequest(){
    	var host=server.address().address;
    	var port=server.address().port;
    	console.log('应用实例,访问地址为 http://%s:%s', host,port);
    }
    

      

    浏览器访问 http://127.0.0.1:8081/index.htm,如图所示:

    返回信息:

    到server.js的目录查看,文件已经上传:

  • 相关阅读:
    6月15日学习日志
    6月14日学习日志
    6月13日学习日志
    6月12日学习日志
    给建民哥的意见
    6月10日学习日志
    6月9日学习日志
    6月8日学习日志
    梦断代码读书笔记3
    第二次冲刺(六)
  • 原文地址:https://www.cnblogs.com/1906859953Lucas/p/9603125.html
Copyright © 2011-2022 走看看