路由、ejs、express服务器

一、路由中的两个参数

request

request.query		  获取查询字符串的参数,拿到一个对象
request.params 	 	  获取参数的路由参数
request.body 		  获取post请求,(要借助中间件) ap.use(express.urlencoded({extended:true})) 
request.get(xxx)      获取请求头中指定key对应的value

response

response.send()       		给浏览器作出一个响应
response.end()        		给浏览器做出一个响应(不会自动追加响应头,容易乱码)
response.download()   		告诉浏览器下载一个文件。(绝对路径)
response.sendFile()   		给浏览器发送一个文件。(绝对路径)
response.redirect()   		重定向到一个新的地址(URL)
response.set(header,value) 	自定义响应头内容
response.get()     			获取响应头指定key对应的value
response.status(code) 	 	设置响应状态码(不建议使用)

二、当把路由从server.js抽离出来时

1⃣️.引入路由器

let {Router} = require(‘express’)

2⃣️.实例化路由器

let router = new Router()

3⃣️.引入path模块,path模块是node的核心模块,无需引入,直接使用 (但是尽量有)

let {resplve} = require(‘path’)

举个🌰:
登陆页面:
router.get(’./login’,(req,res)=>{
   let filePath = resolve(__dirname,’…/public/login.html’)
  res.sendFile(filePath)
})
module.exports = router

3.1在server.js中引入(UI路由)

let uiRouter = require(’./router/uiRouter’)

3.2使用ui路由中间件

app.use(uiRouter)

三、ejs模版

1⃣️.安装ejs

yarn add ejs

2⃣️.设置模版引擎

app.set(‘view engine’,‘ejs’)

3⃣️.设置所在目录

app.set(‘views’,’./views’)

4⃣️.使用渲染页面

response.render(‘demo’)

四、ejs常用的三种语法

1⃣️:<% xxxxx %> xxx可以替换为任意的js代码,不会输出任何内容给浏览器

2⃣️:<% -xxxx %> xxx可以替换为任意的js变量,渲染标签

3⃣️:<%= xxxx %> xxx 可以替换为任意的js变量,不渲染标签

五、express的使用

1⃣️.引入express

let express = require(‘express’)

2⃣️.创建app服务对象

let app = express()

3⃣️.隐藏服务器的具体实现

app.disable(‘x-powered-by’)

4⃣️.设置路由

app.get(’./’,(request,response)=>{response.send(’…’)})

5⃣️.设置监听

app.listen(‘3000’,(err)=>{
if(!err) console.log(‘成功’)
else{console.log(err)}
})

提示:如果有必要:
暴露静态资源:app.use(express.static(‘public’))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值