• node.js上传文件


    上传思路:
    通过multer模块对文件上传,上传后存放到文件夹uploadfile中,然后读取该文件再写入到根目录下

    1、index.html
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Title</title>
    </head>
    <body>
    <h3>文件上传:</h3>
    选择一个文件上传: <br />
    <form action="/file_upload" method="post" enctype="multipart/form-data">
    <input type="file" name="file" size="50" />
    <br />
    <input type="submit" value="上传文件" />
    </form>
    </body>
    </html>
    2、upload.js

    var express = require('express');
    var app = express();
    var fs = require("fs");

    var bodyParser = require('body-parser');
    var multer = require('multer');

    //app.use(express.static('public'));
    //app.use(bodyParser.urlencoded({ extended: false }));

    //文件上传模块 multer
    app.use(multer({ dest: 'uploadfile/'}).array('file'));

    app.get('/index.html', function (req, res) {
    res.sendFile( __dirname + "/" + "index.html" );
    })

    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 uploaded successfully',
    filename:req.files[0].originalname
    };
    }
    console.log( response );
    res.end( JSON.stringify( response ) );
    });
    });
    })

    var server = app.listen(8081, function () {

    var host = server.address().address
    var port = server.address().port

    console.log("应用实例,访问地址为 http://%s:%s", host, port)

    })

    3、执行node upload.js

    在浏览器打开 http://127.0.0.1:8081/index.html
  • 相关阅读:
    java高级语法4:集合
    java高级语法3:异常和注解
    Java高级语法2:Lambda表达式
    VS编译时卡在正在从以下位置加载xxx.dll符号
    mysql中的外键
    localhost和127.0.0.1的区别
    添加依赖项
    代码版本控制——TFS
    优化版冒泡排序
    visual studio vode 汉化
  • 原文地址:https://www.cnblogs.com/zhaodagang8/p/10949643.html
Copyright © 2020-2023  润新知