node框架

express

 

npm i express -S

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

app.get(路径,function(req,res){
  express框架新增的方法
    res.send(任意类型)
    res.sendFile()//(文件绝对路径) 或 (相对路径,{root:__dirname})
    res.json(json类型)
    res.sendStatus(404)状态码为404,并且停止响应
    res.status(404)状态码设置为404
    res.header(设置返回头)
    res.render()
    
    req.path 端口后 问号前
    req.query对象类型

})
app.post()
app.put()
app.delete()
app.listen(8080,function(){})


中间件
app.use(function(req,res,next){
  浏览器请求先经过该函数在到达服务器
  中间件的代码位置应该在服务器返回处理之上

  调用next()才会继续往下走  // next(如参数不为空)则走err中间件
})
app.use(function(err,req,res,next){

})

1)session中间件
npm i express-session -S
let session=require('express-session')
app.use(session({
    resave:true,//每次访问都重新保存session
    saveUninitialized:true,//保存未初始化的session
    secret:'1'//密钥
}))
设置req.session.key=value
获取req.session.key

2)请求体中间件

npm i body-parser -S
let bodyParser=require('body-parser')
app.use(bodyParser.urlencoded({extended:true}))true则采用qs,false采用queryString
app.use(bodyParser.json())
req.body返回请求体的json格式


路由

路由表文件:
let router=express.Router();
配置子路径
router.get(子路径,function(req,res){

})
...
module.exports=router

主文件:
let A=require(路由表文件)
app.use(主路径,A)


静态资源的访问
app.use(可选子路径,express.static(path.resolve(资源文件根目录名)))
访问资源文件下的文件 返回文件内容


ejs模板文件
npm i ejs -S

app.set('view engine','ejs')//设置模板引擎
app.set('views',path.resolve('目录名'))//设置模板文件路径
如模板引擎设置为html则需设置app.engine('html',require('ejs').__express)


res.render('./文件名',{title:'首页',users:[{id:1,name:'zzz'}]})
地址会自动加上设置好的路径和后缀

模板文件demo
  <ul>
        <%
            for(let i=0;i<users.length;i++){
                let user=users[i];
                %>
                <li><%= user.name %></li>
        <%
            }
        %>

    </ul>
    <%-msg%>

js代码用<% %>包住

表达式用<%= %>

html标签用<%- 变量名%>

 

 cookie

服务器返回cookie:

express框架新增res方法
res.cookie(key,value,{
  domain:,
  path:,
  maxAge:毫秒,
  expires:,
  httpOnly:boolean
})服务器返回cookie

原生方法
res.setHeader('Set-Cookie','key=value')


服务器清除cookie

res.clearCookie(key值)


浏览器访问指定的域名和路径时会自动带上cookie
原生方法:
req.headers.cookie

express框架:
let cookieParser=require('cookie-parser')
指定中间件:app.use(cookieParser())

req.cookies.key值


posted @ 2017-10-28 18:06  catalinaScript  阅读(173)  评论(0编辑  收藏  举报