node.js之express框架

这个express被称为是框架的node插件,这个工具就好像springmvc,类似这样,可以用这个框架实现web页面的开发,也可以用它做restful(Web Services),首先导入插件方式是添加

dependencies

如下在package.json中添加你想要的插件与版本:

接下来就可以写代码了

var express = require("express");
var fs = require("fs");
var app = express();
var path = require("path");
var bodyparser = require("body-parser");



app.use(bodyparser.urlencoded({ extended: false}));
app.use(express.static('public'));
app.get('/',function (req,res) {
        res.send("hello");
});
app.get('/login',function (req,res) {
    res.sendFile(__dirname + '/login.html');
});
app.post('/home',function (req,res) {
    var username = req.body.username;
    var password = req.body.password;
    if(password != '456'){
        res.redirect('/login');
        res.end();
    }
    console.log(username);
    console.log(password);
    res.sendFile(__dirname + '/home.html');
});
app.get('/home',function (req,res) {
    var username = req.query.username;
    var password = req.query.password;
    if(username == undefined || password == undefined){
        res.status = 301;
        res.redirect('/login');
        res.end();
    }
});

var server = app.listen(8084,'127.1.2.1',function () {
    var host = server.address().address;
    var port = server.address().port;
    console.log('server is starting on http://' + host +':'+ port);
});

有这样几个地方需要注意:

1、listen里面第一个参数是端口,必须要写,第二个参数为ip,这个将是对外访问时的地址,当然可以不写,默认127.0.0.1,不写的话server.address().address将是“::”。

2、app.use(bodyparser.urlencoded({ extended: false}));这一句是在使用body-parser时一定要写的,当然也可以有另一种写法var bodyparserurlencoded = bodyparser.urlencoded({ extended: false});

app.post('/',bodyparserurlencoded,function(req,res){...});

3、app.use(express.static('public'));这一句算是题外话,其实和express没有多大关系,但是鉴于会使用到静态文件所以这一句必不可少,但是很值得注意的是这个里面的文件夹可以是任何一个但是必须要在你的当前运行的**.js所在目录下的public(任何名称的目录)。

4、重定向,

res.redirect('/login');
res.end();

在重定向之后如果还有response处理就一定要end。

猜你喜欢

转载自my.oschina.net/u/2398693/blog/1809012