node.js(基础四)_express基础

一、前言                                                          

本次内容主要包括:

                            1、express的基本用法

                            2、express中的静态服务

                            3、express中art-template的使用

                            4、express中body-parser的使用

                            5、expression 中express-session的使用

二、基础内容                                                   

1、express的基本使用

          (1)express是node.js中封装好的一个模块,让我们更加方便的来创建一个服务器

//0安装好这个模块之后引入
var express = require('express')

// 1. 创建 app
var app = express()

//2. 用app.get()的方式替代了以前server.on()的方式
app.get('/', function (req, res) {
  res.send('hello world')
})
//3.设置服务器端口
app.listen(3000, function () {
  console.log('express app is running ...')
})

       

2、express中的静态服务

           例子项目目录结构如图:

  第一种方式:

app.use('/public/',express.static('./public/'))

可以通过如下路径来访问:

 第二种方式:

//省略了第一个参数,但是在访问的时候不能带上public, 如果加上反而出错
app.use(express.static('./public/'))

通过如下路径来访问:

 

 第三种方式:相当于给public加上一个别名

//访问的时候将原来的public替换为这个别名
app.use('/a/',express.static('./public/'))

 通过如下路径访问:

   

    3、express中art-template的使用参考:

        第一步:安装

       

//安装
npm install --save art-template
npm install --save express-art-template

       

      第二步:配置第一个参数配置的是文件后缀名,需要渲染的文件的后缀名这里就填写对应的

app.engine('html', require('express-art-template'));

     

      第三步:使用,这里会默认到views目录下面去找对应的文件名,所以我们把.html文件都放views目录下是有意义的

//请求/的时候跳转到index.html中
////这里会默认去views下面目录下去找index.html
app.get('/', function(req, res) {
    res.render('index.html', {
        comments:comments
    })
});

注意:可以通过下面代码来更改默认的文件夹

app.set('xxxx', 目录路径 )

        第四步:渲染index.html模板

 https://www.cnblogs.com/chyingp/p/nodejs-learning-express-body-parser.html

       4、express中默认是get提交,如果要使用post方式提交必须安装插件

       第一步:打开network看看post提交的数据保存在哪里

       第二步:有一个body-parser的插件用来接收post提交的数据

      先安装插件:

      

//安装body-parser插件
npm install --save body-parser

     

    配置以及使用

//安装完插件之后引入
var bodyParse = require('body-parser')


//parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false}))

//parse application/json
app.use(bodyParser.json())

//处理post提交的数据
app.post('/post',function(req, res){

})

   5、express-session的基本使用:参考文档https:/github.com/expressjs/session

        session :可以帮助我们记录登录状态,

        安装

//安装express-session

cnpm install express-session

     

        配置:

//引入
var session = require('express-session')

//配置session
app.use(session({
    secret: 'keywoard cat',
    resave: false,
    saveUninitialized:true
}))

 使用:

//创建session数据
req.session.username = 'name'


//获取

req..session.username

三、总结                                                          

1、使用第三方工具nodemon解决重启node.js服务器问题,需要如下操作:

//1、在当前目录下输入下面安装nodemon
npm install --global nodemon

//2、用来执行就不需要重启了
nodemon xxx.js
虽然现在走得很慢,但不会一直这么慢
原文地址:https://www.cnblogs.com/xxm980617/p/10544479.html