ACP2E-5143: GraphQL route-Abfrage rendert nicht angeforderten CMS-Seiteninhalt
Der Patch ACP2E-5143 behebt das Problem, dass die GraphQL route-Abfrage den gesamten CMS-Seiteninhalt einschließlich Page Builder-Widgets und Produktlisten rendert, selbst wenn nur URL-Routing-Felder angefordert werden, was die URL-Auflösung verlangsamt. Dieser Patch ist verfügbar, wenn Quality Patches Tool (QPT) 1.1.84 installiert ist. Die Patch-ID lautet ACP2E-5143. Dieses Problem wird voraussichtlich in Adobe Commerce 2.4.10 behoben.
Betroffene Produkte und Versionen
Der Patch wird für die Adobe Commerce-Version erstellt:
- Adobe Commerce (alle Bereitstellungsmethoden) 2.4.7-p9
Kompatibel mit Adobe Commerce-Versionen:
- Adobe Commerce (alle Bereitstellungsmethoden) 2.4.4 - 2.4.7-p10
magento/quality-patches auf die neueste Version und überprüfen Sie die Kompatibilität auf der Seite Quality Patches Tool: Nach Patches suchen. Verwenden Sie die Patch-ID als Suchbegriff, um den Patch zu finden.Problem
Problem, bei dem die GraphQL route-Abfrage den gesamten CMS-Seiteninhalt einschließlich Page Builder-Widgets und Produktlisten rendert, selbst wenn nur URL-Routing-Felder angefordert werden, was die URL-Auflösung verlangsamt.
Voraussetzungen:
Page Builder ist installiert.
Schritte zur Reproduktion:
-
Gehen Sie zu Admin > Content > Elements > Pages und klicken Sie auf Add New Page.
-
Geben Sie die Seitendetails ein, legen Sie Enable Page auf Yes fest und klicken Sie im Abschnitt Content auf Edit with Page Builder . Erweitern Sie Add Content im Bedienfeld „Seiten-Builder“ und ziehen Sie einen Products Platzhalter auf die Bühne oder fügen Sie ein Katalog-Produkt-Widget in den Seiteninhalt ein.
-
Gehen Sie in Admin zu Stores > Settings > Configuration. Wählen Sie im linken Bedienfeld unter General die Option Web und erweitern Sie dann Default Pages. Legen Sie CMS Home Page auf die neue Seite fest und klicken Sie auf Save Config.
-
Senden Sie die folgende GraphQL-Anfrage:
code language-none query ResolveURL($url: String!) { route(url: $url) { relative_url redirect_code type ... on CmsPage { identifier __typename } ... on ProductInterface { uid __typename } ... on CategoryInterface { uid __typename } __typename } } -
Verwenden Sie die folgenden Variablen für die Anfrage:
code language-none { "url": "/" }
Erwartete Ergebnisse:
Die route Abfrage gibt die angeforderten Routing-Metadaten und Typdiskriminatorfelder für die CMS-Homepage zurück, ohne den vollständigen Inhalt zu rendern.
Tatsächliche Ergebnisse:
- Die
routeAbfrage rendert den vollständigen Inhalt der CMS-Startseite, obwohl nur Routing-Metadaten und Typdiskriminatorfelder angefordert werden. - Page Builder-Widgets laden Produktsammlungen, wodurch die Antwortzeit und die Anzahl der Datenbankabfragen pro Anfrage erhöht werden.
Patch anwenden
Verwenden Sie je nach Bereitstellungsmethode die folgenden Links, um einzelne Patches anzuwenden:
- Adobe Commerce oder Magento Open Source On-Premise: Quality Patches Tool > im Quality Patches Tool
- Adobe Commerce in Cloud-Infrastruktur: Upgrades und Patches > Patches anwenden im Handbuch zu Commerce in Cloud-Infrastruktur
Verwandtes Lesen
Weitere Informationen zu Quality Patches Tool finden Sie unter:
- Quality Patches Tool: Ein Self-Service-Tool für hochwertige Patches im Tools-Handbuch