【浏览器】路由

97 阅读1分钟

浏览器路由分为前端路由和后端路由

后端路由

就是把不同路由对应不同的内容或页面的任务交给后端来做。

  • 特点:
    • 前端的页面资源和后端服务是在一个项目中,发布部署的时候也是在一块
    • 页面请求的URL全部通过后端服务的过滤器进行过滤和处理
    • 前端浏览器显示的页面信息是通过后端服务直接response的,页面的内容是后端进行加工和处理的
  • 优点:
    • 强大的jstl标签,jsp标准库的应用让开发效率大大提升
    • 代码编写自由度高
  • 缺点:
    • 前后端代码耦合验证
    • 体验较差,每次页面跳转都要重新向服务器发起请求,慢
    • 必须运行在Java的web容器里
    • 大的web项目在开发和管理上较麻烦

前端路由

就是把不同路由对应不同的内容或页面的任务交给前端来做。

  • 实现原理:
    • History API
    • hash
  • 优点:
    • 用户体验提升,因为前端路由在访问一个新页面的时候仅仅交换了一个路径唯一,没有网络延迟
    • 做无感刷新,做单页面应用
    • 可以直接在游览器中输入指定想要访问的URL
    • 实现了前后端分离,方便开发
  • 缺点:
    • 使用游览器的前进/后退键的时候会重新发送请求,没有合理的利益缓存
    • 单页面无法记住之前滚动的位置