《高级前端8.2~8.3》Node.js 开发环境,Express小例子

环境介绍

 

Nodejs环境

 

开发工具

Mac下的开发环境,都通过homebrew安装

 

web应用的基本组件和Express框架

web应用包含:

Express中文网:http://www.expressjs.com.cn/

Express的hello world:

var express = require('express');
var app = express();

app.get('/chemayi', function (req, res) {
    res.send('hello chemayi');
})

var server = app.listen(3000, function () {
  var host = server.address().address;
  var port = server.address().port;
  console.log('Example app listening at http://%s:%s', host, port);
});

然后在终端执行node index,接着访问http://localhost:3000 就可以看到返回数据了

 

Express的配置和路由

下面代码使用 expressjs 来返回服务器端的 JSON/XML 数据

 1 var express = require('express');
 2 var app = express();
 3 
 4 app.get('/menu', function(req, res) {
 5   res.status(200);
 6   res.json({
 7     python: 20,
 8     nodejs: 1,
 9     others: 10
10   })
11 })
12 
13 var questions = [{
14   id: 1,
15   title: 't1',
16   asker: 'you',
17   course: 'nodejs',
18   'last-repkly': Date.now(),
19   reply: 1,
20   state: 'resolved'
21 }, {
22   id: 2,
23   title: 't2',
24   asker: 'you',
25   course: 'nodejs',
26   'last-repkly': Date.now(),
27   reply: 1,
28   state: 'unresolved'
29 }];
30 
31 app.get('/questions', function(req, res) {
32   res.status(200);
33   res.json(questions)
34 })
35 
36 app.get('/questions/all', function(req, res) {
37   res.status(200);
38   res.json(questions)
39 })
40 
41 app.get('/questions/resolved', function(req, res) {
42   res.status(200);
43   res.json(questions.filter(function (q) {
44       return q && q.state === 'resolved';
45   }))
46 })
47 
48 app.get('/questions/unresolved', function(req, res) {
49   res.status(200);
50   res.json(questions.filter(function (q) {
51       return q && q.state === 'unresolved';
52   }))
53 })
54 
55 var server = app.listen(3000, function() {
56   var host = server.address().address;
57   var port = server.address().port;
58   console.log('Example app listening at http://%s:%s', host, port);
59 });

 

posted @ 2016-11-30 14:48  暖风叔叔  阅读(214)  评论(0)    收藏  举报