[僅限PaaS]{class="badge informative" title="僅適用於雲端專案(Adobe管理的PaaS基礎結構)和內部部署專案的Adobe Commerce 。"}
ACSD-62965:修正GraphQL訂單放置回應中遺失LocalizedException訊息的問題
ACSD-62965修補程式修正了下單期間GraphQL回應中未包含LocalizedException訊息的問題。 此修補程式可用於Quality Patches Tool (QPT) 1.1.57。修補程式ID為ACSD-62965。 請注意,此問題已排程在Adobe Commerce 2.4.8中修正。
受影響的產品和版本
已為Adobe Commerce版本建立修補程式:
Adobe Commerce (所有部署方法) 2.4.7
與Adobe Commerce版本相容:
Adobe Commerce (所有部署方法) 2.4.7 - 2.4.7-p3
magento/quality-patches套件更新至最新版本,並在Quality Patches Tool上檢查相容性:搜尋修補程式頁面。 使用修補程式ID作為搜尋關鍵字,以尋找修補程式。問題
訂單放置的GraphQL回應未包含LocalizedException訊息,導致偵錯所需的錯誤詳細資料不足。
要再現的步驟:
-
安裝乾淨的 Adobe Commerce 執行個體。
-
將產品新增到購物車並繼續訂單放置步驟。
-
在
LocalizedException中新增Magento\Framework\Exception\LocalizedException至app/code/Magento/QuoteGraphQl/Model/Resolver/PlaceOrder.php。 -
在下列行之後插入例外:
code language-none $cart = $this->getCartForCheckout->execute($maskedCartId, $userId, $storeId);新增例外:
code language-none throw new LocalizedException(new Phrase("Test LocalizedException")); -
執行下單GraphQL請求:
code language-none mutation { placeOrder(input: {cart_id: "cart_id"}) { order { order_number } } } -
觀察回應:
-
回應不包含
LocalizedException訊息。 -
不正確回應的範例:
code language-none { "data": { "placeOrder": { "order": null } } }
-
預期結果:
如果發生LocalizedException,則應將例外狀況訊息包含在訂單位置GraphQL回應中,以改善錯誤處理。
實際結果:
如果發生LocalizedException,訂單位置GraphQL回應中不會包含例外狀況訊息。
套用修補程式
若要套用個別修補程式,請根據您的部署方法使用下列連結:
- Adobe Commerce或Magento Open Source內部部署: Quality Patches Tool 指南中的>使用狀況Quality Patches Tool。
- 雲端基礎結構上的Adobe Commerce:雲端基礎結構上的Commerce指南中的升級和修補程式>套用修補程式。
相關閱讀
若要進一步瞭解Quality Patches Tool,請參閱: