[仅限PaaS]{class="badge informative" title="仅适用于云项目(Adobe管理的PaaS基础架构)和内部部署项目上的Adobe Commerce 。"}
ACSD-48627:缺货的可配置产品导致错误
ACSD-48627修补程序修复了在发送GraphQL请求以获取购物车详细信息时,缺货的可配置产品会导致错误的问题。 安装Quality Patches Tool (QPT) 1.1.25时,此修补程序可用。 修补程序ID为ACSD-48627。 请注意,该问题计划在Adobe Commerce 2.4.6中修复。
受影响的产品和版本
为Adobe Commerce版本创建了修补程序:
- Adobe Commerce(所有部署方法) 2.4.5-p1
与Adobe Commerce版本兼容:
- Adobe Commerce(所有部署方法) 2.4.5 - 2.4.5-p1
NOTE
该修补程序可能适用于具有新Quality Patches Tool发行版本的其他版本。 要检查修补程序是否与您的Adobe Commerce版本兼容,请将
magento/quality-patches包更新到最新版本,并在Quality Patches Tool:搜索修补程序页面上检查兼容性。 使用修补程序ID作为搜索关键字来查找修补程序。问题
缺货的可配置产品在发送GraphQL请求以获取购物车详细信息时会导致错误。
重现步骤:
-
创建客户帐户。
-
将一些产品(包括可配置的产品)添加到购物车。
-
转到管理员后端,通过将所有子产品数量设置为0来编辑可配置产品。
-
由于所有子产品缺货,因此该可配置产品将缺货。
-
检查
catalog_product_index_price表。 此产品的记录为空。 -
发出GraphQL请求以获取客户令牌。
code language-graphql mutation { generateCustomerToken( email: "test@example.com" password: "xxxx" ) { token } } -
发出GraphQL请求以获取cartId。
code language-graphql Headers: Authentication => Bearer [customer token in step 6]code language-graphql { customerCart { id items { id product { name sku } quantity } } } -
发出GraphQL请求以获取购物车详细信息。
code language-graphql Headers: Authentication => Bearer [customer token in step 6]code language-graphql query GetCartDetails($cartId: String!) { cart(cart_id: $cartId) { id ...CartPageFragment __typename } } fragment CartPageFragment on Cart { id total_quantity ...AppliedCouponsFragment ...ProductListingFragment ...PriceSummaryFragment __typename } fragment AppliedCouponsFragment on Cart { id applied_coupons { code __typename } __typename } fragment ProductListingFragment on Cart { id items { uid product { uid name sku url_key url_suffix thumbnail { url __typename } small_image { url __typename } stock_status price_range { minimum_price { final_price { currency value __typename } regular_price { currency value __typename } __typename } __typename } stock_status ... on ConfigurableProduct { variants { attributes { uid __typename } product { uid small_image { url __typename } stock_status __typename } __typename } __typename } __typename } prices { price { currency value __typename } __typename } quantity ... on ConfigurableCartItem { configurable_options { id configurable_product_option_uid option_label configurable_product_option_value_uid value_label __typename } __typename } __typename } __typename } fragment PriceSummaryFragment on Cart { id items { uid quantity __typename } ...ShippingSummaryFragment prices { ...TaxSummaryFragment ...DiscountSummaryFragment ...GrandTotalFragment subtotal_excluding_tax { currency value __typename } subtotal_including_tax { currency value __typename } __typename } __typename } fragment DiscountSummaryFragment on CartPrices { discounts { amount { currency value __typename } label __typename } __typename } fragment GrandTotalFragment on CartPrices { grand_total { currency value __typename } __typename } fragment ShippingSummaryFragment on Cart { id shipping_addresses { selected_shipping_method { amount { currency value __typename } __typename } street __typename } __typename } fragment TaxSummaryFragment on CartPrices { applied_taxes { amount { currency value __typename } __typename } __typename }
预期的结果:
响应中没有 内部服务器错误。
实际结果:
响应中存在 内部服务器错误。
应用修补程序
要应用单独的修补程序,请根据您的部署方法使用以下链接:
- Adobe Commerce或Magento Open Source内部部署: Quality Patches Tool 指南中的>使用情况Quality Patches Tool
- 云基础架构上的Adobe Commerce: Commerce on Cloud Infrastructure指南中的升级和修补程序>应用修补程序
相关阅读
- Quality Patches Tool 已发布:支持知识库中用于自助提供高质量修补程序的新工具
- 使用 Quality Patches Tool指南中的Quality Patches Tool检查修补程序是否可用于您的Adobe Commerce问题
- 在Commerce实施行动手册中修改数据库表的最佳实践
有关QPT中其他可用修补程序的信息,请参阅Quality Patches Tool指南中的:搜索修补程序Quality Patches Tool。
recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3