首页 > 解决方案 > 不再可能覆盖斯巴达克斯拦截器?

问题描述

自从升级以来@spartacus/core,我注意到拦截器(在其他一些可注射剂中)已被别名为 Thetaɵ字符的前缀。

我注意到 Angular 团队通常对不用于覆盖或扩展的内部做同样的事情。我想这也是斯巴达克斯团队的目标?

请问为什么这些拦截器被认为是内部的?

我们目前正在与我们自己的独立 OIDC 服务器集成,为了正确实现这一点,我们需要覆盖一些 auth 拦截器,即UserTokenInterceptorClientTokenInterceptor.

有其他推荐的方法还是我们必须降级@spartacus/core

我们可以确保在每次碰撞时检查我们要覆盖的 Theta 字符别名标记,@spartacus/core尽管这有点违反规定——我注意到当我们将 spartacus 碰撞到 2.x 时别名发生了变化。

我玩弄了创建一个总体空拦截器以使其他斯巴达克斯拦截器效果无效的想法,尽管对于像ClientTokenInterceptor自己的网络请求预检这样的拦截器来说,这可能是不可能的。

标签: spartacus-storefront

解决方案


我们最近开始研究授权模块以支持不同的 OAuth 流程并使与外部身份提供者的集成更容易。有了这些更改,我们已经考虑了拦截器,它们中会有一些更改,它们将被导出到公共@spartacus/coreAPI 中。目前我们的目标是 3.0 版本的更改,但我不能保证任何具体日期。


推荐阅读