ACSD-45817:GraphQL产品突变会提供所有可配置变体

ACSD-45817修补程序修复了以下问题:特定存储的GraphQL products突变返回所有可配置变体,包括那些未分配给所请求存储的变体。 安装Quality Patches Tool (QPT) 1.1.18时,此修补程序可用。 修补程序ID为ACSD-45817。 请注意,Adobe Commerce 2.4.4中已修复此问题。

受影响的产品和版本

为Adobe Commerce版本创建了修补程序:

  • Adobe Commerce(所有部署方法) 2.4.3-p1

与Adobe Commerce版本兼容:

  • Adobe Commerce(所有部署方法) 2.4.2 - 2.4.3-p3
NOTE
该修补程序可能适用于具有新的Quality Patches Tool版本的其他版本。 要检查修补程序是否与您的Adobe Commerce版本兼容,请将magento/quality-patches包更新到最新版本,并在Quality Patches Tool:搜索修补程序页面上检查兼容性。 使用修补程序ID作为搜索关键字来查找修补程序。

问题

特定存储的GraphQL products突变会返回所有可配置的变体,包括那些未分配给所请求存储的变体。

先决条件

创建第2个网站、第2个商店和第2个商店视图。

重现步骤

  1. 创建包含两个子产品的可配置产品:“configurable-a”和“configurable-b”。

  2. 将可配置产品分配给两个网站。

  3. 仅向第二个网站分配一个“可配置 — a”变体。

  4. 转到​ 店面,切换到第二个网站,然后打开可配置的产品。

  5. 确保只看到一个子选项:"configurable-a"。

  6. 使用POST: /graphql终结点和Headers: "store" = "new"运行GraphQL查询

    code language-graphql
    {
      products(filter: { sku: { eq: "configurable" } }) {
        items {
          id
          attribute_set_id
          name
          sku
          __typename
          price_range{
            minimum_price{
              regular_price{
                value
                currency
              }
            }
          }
          categories {
            id
          }
          ... on ConfigurableProduct {
            configurable_options {
              id
              attribute_id_v2
              label
              position
              use_default
              attribute_code
              values {
                value_index
                label
              }
              product_id
            }
            variants {
              product {
                id
                name
                sku
                attribute_set_id
                ... on PhysicalProductInterface {
                  weight
                }
                price_range{
                  minimum_price{
                    regular_price{
                      value
                      currency
                    }
                  }
                }
              }
              attributes {
                uid
                label
                code
                value_index
              }
            }
          }
        }
      }
    }
    

预期的结果

“configurable-b”变体未分配给第2个网站,因此不应显示在响应中。

实际结果

响应中显示“configurable-b”变量。

应用修补程序

要应用单独的修补程序,请根据您的部署方法使用以下链接:

相关阅读

要了解有关Quality Patches Tool的更多信息,请参阅:

有关QPT中提供的其他修补程序的信息,请参阅我们的开发人员文档中的QPT中提供的修补程序。

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a