接下来我们学习express这个module的使用。
我们看一个简单的例子:
var express = require("express");
var app = express.createServer();
// recipes handler
app.get("/recipes", function(req, resp){
resp.send("<h1>All Recipes</h1>");
});
// ":title" is a parameter that used in req.params
app.get("/recipes/:title", function(req, resp){
resp.send("<h1>" + req.params.title + "</h1>");
});
// default handler goes last
app.get("/*", function(req, resp){
resp.send("if all else fails, we hit this page.");
});
app.listen(3900);
我们可以输入各种地址进行测试:
http://localhost:3900/recipes/dffffddd
http://localhost:3900/recipes/
通过以上测试可知我们可以使不同的处理逻辑分开。
下面的这个例子我们将express和ejs结合起来:
var express = require('express');
var app = express.createServer();
// "/" handler, load index.ejs
app.get('/', function(req, res){
res.render('index.ejs', {title: 'Clever Kitchens'});
});
// "/recipes" handler, load layout.ejs
app.get('/recipes', function(req, res){
res.render('layout.ejs', {
title: 'Clever Kitchens - Recipes',
body: '<h1>All Recipes</h1>'
});
});
// "/recipes/:titile" handler
app.get('/recipes/:title', function(req, res) {
res.send('<h1>' + req.params.title + '</h1>');
});
// other handler
app.get('/*', function(req, res) {
res.status(404).render('error.ejs', {title: 'Error'});
});
app.listen(3900);