如何理解URL和路由

1、路由是什么?

路由简单来说就是url到函数的映射 如/books -> getBooks(),当访问/books时,会执行getBooks()函数。通常来说,就是随着浏览器地址的变化,展示给用户不同的页面。

在我的理解来说,路由可以分为前端路由和后端路由。

2、router是什么?

和route的关系 router 可以理解为一个容器,管理一组route。当接收到一个url,就会去路由映射表里查找相应的函数。

3、服务端路由(后端路由)

当服务器接收到客户端发来的请求,会根据请求的URL,来找到相应的函数,然后执行函数,并将函数的返回值发送给客户端。

app.get('/', (req, res) => {
  res.sendFile('index')
})

app.get('/users', (req, res) => {
  db.queryAllUsers()
    .then(data => res.send(data))
})

如上,定义了两条路由:

  访问/,会返回index页面

  访问/users,会返回从数据库查询的user数据

注意:在router匹配route的过程中,不仅会看url,还会看请求方式,如用post方式来访问/users,就找不到正确的路由

4、前端路由

对于前端路由来说,路由的映射函数通常是进行一些DOM的显示和隐藏操作。这样,当访问不同的路径的时候,会显示不同的页面组件。

  • hash模式

  如xxx.com/#xqajla,#xqajla即hash值

  • history模式
  • VUE Router

参考文章:https://zhuanlan.zhihu.com/p/24814675

ps:今天在测试过程中遇到了点击页面未正常跳转至相应地址,发现是路由未变化,打算了解下路由。



如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
posted @   yuxinn  阅读(1371)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示