node.js学习笔记Day5:Express框架下写留言板

注:笔记与day4合并。
此文描述在express框架下重写之前的留言本案例。
文件格式与
node.js学习笔记Day3—一个留言本的小案例
相同

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

var comments = [
    {
        name:'Kobe Bryant',
        message:'湖人总冠军',
        dateTime:'2020-2-24'
    },
    {
        name:'Kobe Bryant',
        message:'湖人总冠军',
        dateTime:'2020-2-25'
    },
    {
        name:'Kobe Bryant',
        message:'湖人总冠军',
        dateTime:'2020-2-26'
    }
]
//提供静态资源目录
//可以直接通过/public/xx的方式访问public目录中的所有资源
app.use('/public/',express.static('./public/'))

//第一个参数表示当渲染以.art结尾的文件的时候,使用art-template模板引擎
app.engine('html', require('express-art-template'))

app.get('/',function(req,res){
    res.render('index.html',{
        comments: comments
    })
})
//以get方式来请求/post
app.get('/post',function(req,res){
    res.render('post.html')
})

/*以get方法,html与之前一个相同,也可以完成
app.get('/pinglun',function(req,res){
    var comment = req.query
    comment.dateTime = '2022'
    comments.unshift(comment)
    res.redirect('/')
})
*/

//这里使用post方式来请求/post 
//post.html文件的19行: get改为post    /pinglun改为/post
//可以利用不同的请求方法让一个请求路径使用多次
var bodyParser = require('body-parser')
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())
app.post('/post',function(req,res){
    var comment = req.body
    comment.dateTime = '2020-2-29'
    comments.unshift(comment)
    res.redirect('/')
})
//相当于server.listen
app.listen(3000,function(){
    console.log('running')
})
发布了13 篇原创文章 · 获赞 0 · 访问量 663

猜你喜欢

转载自blog.csdn.net/cwdben/article/details/104581103