spartacus-storefront - 如何防止在注销时显示 404 错误?
问题描述
我有一个关于注销路线的问题。当您在用户注销时查看演示页面时,控制台中会显示 404 错误,因为 CMSPageGuard 尝试从后端获取不存在的注销页面。这是一个小问题,但似乎不是故意的?
更重要的是,如果注销路径不存在,注销保护中的逻辑会重定向到“home”或“login”。
唯一的解决方法是在后端添加注销页面时不会出现 404 错误,即使它从未显示?
解决方案
简而言之,这是故意的。它是一项功能的一部分,它使确实需要可选注销页面的店面可以轻松地将其添加到 CMS 中,并且它将被 Spartacus 注销逻辑开箱即用。
你对幕后发生的事情是正确的。如果您查看文档中 LogoutGuard 的描述,其整体逻辑描述如下:
负责将用户路由到注销页面(如果可用)或重定向到主页。如果主页受到保护,则会将用户重定向到登录路径。
要验证注销页面是否可用,LogoutGuard
会发出请求。如果注销页面不可用,则该请求会返回 404,这就是浏览器开发工具中显示的内容。
至于防止这些错误显示在日志中,目前没有配置可以关闭此功能。您可能会探索使用自定义LogoutGuard
并覆盖该canActivate
功能,但我不能 100% 确定这是可能的。
推荐阅读
- angular - 如果路径“**”存在,登录 url 会错误地重定向到它
- angular - NPM 更新后 Ionicons 不工作 Ionic V4
- amazon-web-services - 根据目标组健康检查状态更改 Ansible 动态库存订单
- c++ - 编写高效的回溯函数
- node.js - 如何基于 OpenAPI Spec 3.0 生成 Node Rest API Client
- sql - sum case 问题,groupby 子句没有列
- c# - 使用 exel 和互操作 COM 的 C# 内存泄漏
- node.js - 如何在 CentOS 上使用 Nginx 反向代理到域子文件夹中的 Node.js 应用程序?
- angular - 在 application.yml 中获取打包在 Jar 中的文件夹的 dir 路径
- android - Unity 2019.3.0f6 Gradle 构建失败