【问题标题】:Angular: How to Retrieve the Target Url when Redirect to 404 PageAngular:重定向到 404 页面时如何检索目标 URL
【发布时间】:2022-01-11 06:11:22
【问题描述】:

在我的 Angular 应用程序中,我以这种方式处理 404 路由:

{
    path: '404',
    loadChildren: () =>
        import('../pages/404-pg/404-pg.module').then(
            (m) => m.FourZeroFourPgModule
        ),
},
{
    path: '**',
    redirectTo: '/404',
}

重定向工作正常,但我注意到我部署的网站上的页面导航日志中有一些 404 日志,并且目前没有记录用户访问的导致 404 重定向的 url。如何使用路由器确定“原始”路由?

例如,如果我在浏览器中输入:localhost:4200/bad-url,如何使用Router对象(或ActivatedRoute等)获取“/bad-url”路径?

【问题讨论】:

    标签: angular routes


    【解决方案1】:

    你可以创建一个拦截器来处理这种情况。

    例如,

    当你输入“localhost:4200/bad-url”

    THEN 在重定向之前的拦截器中,您可以访问当前键入的 URL (this.router.url)

    并且您可以将其保存为“last_route_from_error”或类似的内容

    THEN 用户被重定向到 404 页面

    并且您已将整个 URL 保存在存储空间中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-11
      • 1970-01-01
      • 2019-03-03
      • 2020-11-12
      • 1970-01-01
      • 2019-12-11
      • 1970-01-01
      相关资源
      最近更新 更多