nodejs express 框架

Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具。
使用 Express 可以快速地搭建一个完整功能的网站。
要想使用express框架,就需要进行下载安装,只需在命令行输入npm install express ,然后通过require()进行导入

var express = require('express');
var app = express();
var bodyParser = require('body-parser');
var fs = require('fs');
var multer  = require('multer');//需要下载

var urlencodedParser = bodyParser.urlencoded({ extended: false });
 // 创建 application/x-www-form-urlencoded 编码解析
app.use(multer({ dest: '/tmp/'}).array('file'));//二进制流上传文件已经解析完成
app.use('/public',express.static('public'));
app.use('/favicon.ico',express.static('favicon.ico'));
app.get('/', function (req, res) {
  res.send('根目录  <a href="/a?id=100">我是a<img src="/public/1.jpg"></a>');
})
app.get('/a',function(req,res){
    res.send('我收到的参数是:'+req.query.id);
   // res.send('我是a页面  <a href="/">返回</a>')
}) 
app.use('/upload',urlencodedParser,function(req,res){
    if(req.method == 'GET'){
        res.send(`<form action="" name="create" method="POST" enctype="multipart/form-data">
        <input type="username" name="username">名称
        <input type="password" name="password">密码
        <input type="file" name="file">
        <button type="submit">提交</button>
        </form>`)
    }else if(req.method == 'POST'){
        var fileinfo = req.files[0].originalname.split('.'); //以点拆分文件后缀
        var newname = new Date().getTime()+Math.ceil(Math.random()*10)+'.'+fileinfo[fileinfo.length-1];
        //以上传时间区分,防止图片被覆盖
        var des_file = __dirname + "/public/" +newname;
        var readFile = fs.createReadStream(req.files[0].path);
        var writeFile = fs.createWriteStream(des_file);
        readFile.pipe(writeFile);
        writeFile.on('finish',function(){
            //经过解析之后,解析出来的数据放到req对象的files对象里面了
            req.body.file = '/public/'+ newname;
            res.send('<img src="'+req.body.file+'">'); //页面显示图片
        })
    }
})
//页面找不到时提示,要写在最后面
app.get('*',function(req,res){
    res.send('当前页面不存在404')
})
var server = app.listen(8081, function () {
  var host = server.address().address
  var port = server.address().port
  console.log("应用实例,访问地址为 http://%s:%s", host, port)
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值