如何理解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:今天在测试过程中遇到了点击页面未正常跳转至相应地址,发现是路由未变化,打算了解下路由。
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧