路由的简单实现及方法
- 路由是处理 HTTP 请求的关键部分,它决定了如何根据不同的 URL 和 HTTP 方法(如 GET、POST、PUT、DELETE 等)来分发请求。
- 使用express来实现路由
// 实际上上一篇已经使用到了路由的功能
// 引入express
const express = require('express')
// 创建对象
const app = express()
//时间请求路径为 /home的时候生效
app.get('/index',(req,res)=>{
res.end('hello express')
})
// 实际请求路径为 /时候生效,单独说明 是因为每个网站首页基本上都是这样进行访问的
app.get('/',(req,res)=>{
res.end('home')
})
// post方式
app.post('/login',(req,res)=>{
res.end('login success')
})
// all 是所有的意思 不管你的请求方式是什么 只要访问路径对
app.all('/all',(req,res)=>{
res.end('test All')
})
// *可以响应404请求 假如上面所有的都匹配不到 那就会被此方法匹配返回404
app.all('*',(req,res)=>{
res.end('404')
})
// 监听端口 启动服务
app.listen(3000,()=>{
console.log('服务启动成功')
})
GET 请求方式运行结果
POST请求方式需要我们通过表单形式调用演示一下
获取请求报文参数
// 引入express
const express = require('express')
// 创建对象
const app = express()
//时间请求路径为 /home的时候生效
app.get('/request',(req,res)=>{
// 原生方法
console.log(req.method)
console.log(req.url)
console.log(req.httpVersion)
console.log(req.headers)
// express封装的操作
console.log(req.path)
console.log(req.query)
console.log(req.ip)
console.log(req.get('host'))
res.end('获取报文参数')
})
app.listen(8080,()=>{
console.log('启动获取报文参数')
})
再去访问路径,查看控制台会看到输出的内容
获取路由参数
// 引入express
const express = require('express')
// 创建对象
const app = express()
//创建路由
app.get('/:id',(req,res)=>{
// 获取id值
const {id} = req.params
console.log(id)
res.setHeader('content-type','text/html;charset=utf-8')
res.end('对应id的详情')
})
// 监听端口 启动服务
app.listen(3000,()=>{
console.log('服务启动成功')
})
通过上面的方式,我们可以实现一个类似于商品详情的页面,通过获取到的id返回对应的详情内容
简单的路由练习
内容:通过获取路由参数的形式,返回对应id的内容详情,并且进行展示,贴几个图进行简单的示意。
- 创建一个json数据,作为数据来源(示例)
- 创建一个路由服务,进行简单的配置(示例)
- 访问路径携带对应id,返回对应内容(示例)