如何禁用 Spartacus 默认调用

How to disable Spartacus default calls

是否可以禁用某些默认的 Spartacus 调用?

用户登录后有一些默认调用,但我不需要,如果可能我想禁用。

这些是电话:

"...users/current", 
"...users/current/consenttemplates...", 
"...users/current/carts..."

第二个和第三个是在登录过程之后生成的,第一个是在页面刷新后或导航到不同页面时生成的。

我找到了一种方法,通过创建自定义拦截器并使用 rxjs 中的 NEVER:

intercept(
    request: HttpRequest<any>,
    next: HttpHandler
  ): Observable<HttpEvent<any>> {

    /**
     * Deny list for calls we do not want to use from the Spartacus storefront
     */

    if (request.url.includes('consenttemplates') || request.url.includes('carts') || request.url.includes('users/current')) {
      return NEVER;
    } else {
      return next.handle(request);
    }
  }

您还可以实现相关的 OccAdapter(s) 并在模块中的提供者数组中替换它们。在您的自定义实现中,您可以将这些方法留空。

这里描述了如何:https://sap.github.io/spartacus-docs/cybersource-integration/#providing-a-custom-implementation-for-the-checkoutpaymentadapter