静态文件
1.多项选择路由
书写格式:['/summer','/crush']
即http://localhost:3344/summer|| http://localhost:3344/crush都可访问该请求下同一个资源
2.静态资源配置
app.use(express.static('文件夹地址'))
- 配置静态资源默认配置跟路由数据
- 静态文件夹中所有的内容都属于根路由数据
- 想要在地址栏直接访问静态资源文件夹中的数据,只需要根据项目地址加上对应的文件路径即可
- 默认访问静态文件夹中的index.html文件
- 总结:静态文件夹中的所有文件都会被自动配置一个路由,路由名称时对应文件夹或者文件名称
3.响应头
- res.sendFile(文件绝对路径)=>读取文件
app.get('/summer',(req,res)=>{
res.send('风过林梢')
})
4.哪些标签默认会发起请求
script的src img的src link的href
解决跨域
cors模块
- npm i cors 下载
- const cors = requeire('cors') 引入
- app.use(cors()) 执行
实质上cor就是封装了
res.setHeader('Access-Control-Allow-Origin',"*")
resa.setHeader('Access-Control-Allow-Headers',"*")
这里只是简单的举两个例子,cors里面封装的代码不止我列出这两条。
子路由
理解:http://localhost:3000/summer/wind
wind时summer的子路由
1.router文件夹=>存储子路由文件=>创建对应的js路由文件
2.app.use('路由',require(子路由文件地址))
- 路由=>设置对应路由(端口后面第一个路由就是以及路由)
- 引入=>引入对应子路由文件
3.子路由文件配置
动态路由
动态路由:不是存在多个子路由,而是只有一个固定变量的子路由名称,可以转化成多个子路由名称。
比如我们登录了一个美食网站,localhost://3000/food
这是我们只需要在localhost:3000/food之后拼接一个/食物名(我用的英文)其实子路由也可以实现这种效果,但配置子路由比较麻烦(目前只理解到这一层)