Express----學習

Expresshtml

install  the Express farmwork globally using  NPM    安裝Express模塊:node

npm install Expressexpress

install  important modules along with express   安裝一些由express支持的中間件組件npm

npm install body-parser                            處理JSON ,Raw, Text,URL編碼json

npm install cookie-paeser                        請求讀取cookie並在響應中設置cookiecookie

npm install multer                                      處理 multipart/form-dataapp

npm install basic-auth-connet                 提供對基本HTTP身份驗證的支持ide

npm install  compression :                    提供Gzip壓縮支持post

Express添加到package.json模塊,確保你部署應用的時候,模塊被安裝ui

Serving Static File 靜態文件服務:

Express provides a built-in middleware express-static to serve static file ,such as image,CSS,Javascript,etc.

static中間件能夠直接從磁盤對客戶端提供靜態文件服務:express.static(path,[options])

var express=require('express');//加載experss模塊
var app=express();
app.use(express.static('untitled'));//靜態文件服務

index.html文件:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>My blogger</title>
    <form action="http://127.0.0.1:8081/process_get"method="POST">
        First Name:<input type="text"name="first_name"><br>
        Last  Name:<input type="text"name="last_name">
        <input type="submit"value="Submit">
    </form>
<form action="http://127.0.0.1:8081/file_upload"method="POST" 
      enctype="multipart/form-data">
    File:<input type="file"name="file"size="50"/>
    <br>
    <input type="submit"value="Upload File"/>
</form>
</head>
<body>
</body>
</html>

處理GET請求:

var express=require('express');//加載experss模塊
var app=express();
app.use(express.static('untitled'));//靜態文件服務
app.get('/index.html',function (req,res) {//-提交/index.html get請求
    res.sendFile(__dirname+"/"+'index.html');

});
app.get('/process_get',function (req,res) {//-提交/process_get 請求
    response={
        first_name:req.query.first_name,
        last_name:req.query.last_name
    };
    console.log(response);
    res.end(JSON.stringify(response));   //JSON格式
});
var server=app.listen(8081,function () {
    var host=server.address().address;
    var port=server.address().port;
});

處理POST請求:

var express=require('express');//加載experss模塊
var app=express();
var bodyParser=require('body-parser');//body-parser把post正文中的JSON數據解析爲req.body屬性
var urlencodedParser=bodyParser.urlencoded({extended:false});
app.use(express.static('untitled'));//靜態文件服務
app.get('/index.html',function (req,res) {//-提交/index.html get請求
    res.sendFile(__dirname+"/"+'index.html');

});
app.post('/process_get',urlencodedParser,function (req,res) {
    response={
        first_name:req.body.first_name,
        last_name:req.body.last_name
    };
    console.log(response);
    res.end(JSON.stringify(response));   //JSON格式
});
/*app.get('/process_get',function (req,res) {//-提交/process_get 請求
    response={
        first_name:req.query.first_name,
        last_name:req.query.last_name
    };
    console.log(response);
    res.end(JSON.stringify(response));   //JSON格式
});*/
var server=app.listen(8081,function () {
    var host=server.address().address;
    var port=server.address().port;
});

問題:

var express=require('express');//加載experss模塊
var app=express();
var fs=require('fs');
var bodyParser=require('body-parser');
var multer=require("multer");
var urlencodedParser=bodyParser.urlencoded({extended:false});

app.use(express.static('untitled'));//靜態文件服務
app.use(urlencodedParser);
app.use(multer({ dest:'/vives/'}));

app.get('/index.html',function (req,res) {//-提交/index.html get請求
    res.sendFile(__dirname+"/"+'index.html');

});

app.post('/process_get',urlencodedParser,function (req,res) {
    response={
        first_name:req.body.first_name,
        last_name:req.body.last_name
    };
    console.log(response);
    res.end(JSON.stringify(response));   //JSON格式
});

app.post('/file_upload',function (req,res) {
    var file=__dirname+'/'+req.files.file.name;
    fs.readFile(req.files.file.path,function (err,data) {
       fs.write(file,data,function (err) {
           if(err){
               console.error(err);
           }else{
               response={
                   message:'File upload successfully',
                   filename:req.files.file.name
               };
           };
           console.log(response);
           res.end(JSON.stringify(response));
       }) ;
    });
});
/*app.get('/process_get',function (req,res) {//-提交/process_get 請求
    response={
        first_name:req.query.first_name,
        last_name:req.query.last_name
    };
    console.log(response);
    res.end(JSON.stringify(response));   //JSON格式
});*/
var server=app.listen(8081,function () {
    var host=server.address().address;
    var port=server.address().port;
});

module.js:328
    throw err;
    ^

Error: Cannot find module 'multer'

 使用 sudo npm install multer -g  在運行還報錯    需安裝在node_modules下 (相關路徑)

相關文章
相關標籤/搜索