Node.js文件上传

Node.js express使用Multer实现文件上传
html部分


<div>
    <h3>文件上传:</h3>
    选择一个文件上传: <br/>
    <form action="/upload" method="post" enctype="multipart/form-data">
        <input type="file" name="content"/>
        <br/>
        <input type="submit" value="上传文件"/>
    </form>
</div>

Node.js部分
安装multer:npm install multer --save


var express = require(‘express‘);
var app = express();
var fs = require(‘fs‘);
var multer = require(‘multer‘);
var upload = multer({dest: ‘uploadFile/‘});
//文件上传
app.post(‘/upload‘, upload.any(), function (req, res, next) {
    console.log(req.files[0]);  // 上传的文件信息
    var newFile = "./uploadFile/" + req.files[0].originalname;
    fs.readFile(req.files[0].path, function (err, data) {
        fs.writeFile(newFile, data, function (err) {
            if (err) {
                console.log("错误:", err)
            } else {
                let response = {
                    message: ‘上传成功‘,
                    filename: req.files[0].originalname
                };
                res.json(response);
            }
        });
    })
})
//图片加载,存储在uploadFile下的所有图片
app.get(‘/uploadFile/*‘, function (req, res) {
    res.sendFile( __dirname + "/" + req.url );
})

github地址:https://github.com/Rossy11/no...

来源:https://segmentfault.com/a/1190000017169395

原文地址:https://www.cnblogs.com/thatme/p/10162277.html

时间: 2024-11-05 13:49:42

Node.js文件上传的相关文章

7款js文件上传插件

1.  jQuery File Upload 具有多文件上传.拖拽.进度条和图像预览功能的文件上传插件,支持跨域.分块.暂停恢复和客户端图像缩放.可与任何服务端平台(如PHP.Python.Ruby on Rails.Java.Node.js.Go等)一起使用,支持标准的HTML表单文件上传. 2.  Pixelcone Fileuploader 使用HTML5 API的jQuery文件上传插件,支持AJAX上传和拖拽操作,以及针对老版本浏览器的iframe上传部件.有多种形式来实现多文件上传,

Jquery form.js文件上传返回JSON数据,在IE下提示下载文件的解决办法,并对返回数据进行正确的解析

Jquery from.js插件上传文件非常方便,但是在ie10以下的版本会弹出下载文件对话框 解决方法: 1.在服务端设置response.setContentType("text/plain"); 2.对返回数据正确解析                这时返回的数据不再是json,不能使用解析json的方法进行解析                       var data1=eval("(" + data+ ")");  //将返回的字符

node.js图片上传

1.node-formidable 对文件上传提供帮助的组件 2.app.js var formidable = require('formidable'); var http = require( 'http' ); var sys = require('sys'); http.createServer(function( request ,response ){ if( request.url == '/upload' && request.method.toLowerCase() =

JS文件上传神器bootstrap fileinput详解

Bootstrap FileInput插件功能如此强大,完全没有理由不去使用,但是国内很少能找到本插件完整的使用方法,于是本人去其官网翻译了一下英文说明文档放在这里供英文不好的同学勉强查阅.另外附上一段调用方发和servlet端的接收代码,未完待续. 引言: 一个强化的HTML5 文件输入插件,适用于Bootstrap 3.x.本插件对多种类型的文件提供文件预览,并且提供了多选等功能.本插件还提供给你一个简单的方式去安装一个先进的文件选择/上传控制版本去配合Bootstrap CSS3样式.通过

ajaxfileupload.js 文件上传

一,前台代码. <input id="fileToUpload" type="file" size="25" name="fileToUpload" class="input"> <button class="button" id="buttonUpload" onclick="return ajaxFileUpload();"&

Node.js formidable 上传文件的实现

本案例来自Node.js入门书籍: http://www.nodebeginner.org/index-zh-cn.html 示例中只能上传并展示png图片,当然其他文件都是可行的,自己微调一下即可. 安装node.js: # curl -sL https://rpm.nodesource.com/setup | bash - # yum install -y nodejs  防火墙打开8888端口: Node.js自身处理上传文件会非常繁琐,可使用第三方的node-formidable来轻松处

Node.js——异步上传文件

前台代码 submit() { var file = this.$refs.fileUpload.files[0]; var formData = new FormData(); formData.append("file", file); formData.append("username", this.username); formData.append("password", this.password); axios.post("

js 文件上传进度条

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>XMLHttpRequest上传文件进度实现</title> <script type="text/javascript"> var xhr; var ot;// var oloaded; //上传文件方法 function UpladFile() { var fi

node.js form 上传

安装formidablepm install [email protected] 客户端表单提交 <form class="form-signin" role="form" method="post" enctype='multipart/form-data'> <h2 class="form-signin-heading">上传文件</h2> <input id="fulA