Shopware 5.7.2 Update API get('articles/') bzw. /api/articles

Ahoi - wir haben das Update 5.7.2 eingespielt und nun funktioniert bei zwei shops die API nicht merh richtig. Wir bekommen kein Artikel mehr ausgegeben - hat sich was geändert ? In der Doku ist alles gleich.
Wir bekommen bei $client->get(‚articles/‘); keine Artikel und beim aufruf über die URL also URL/api/articles folgende Fehlermeldung.

{„success“:false,„message“:„Error message: Method „Shopware::Router“ not found failure“}

Hat einer das gleiche Problem ?

Bei Shopware 5.7.3 das gleiche Problem

EIgentlich ist es so:

$client->get("articles") = alle Artikel
$client->get("articles/12345") = Artikel mit ID 12345

Mal ohne „slash“ versucht?

jap hab ich so versucht … articles/12345 ffunktioniert aber alle artikel würde ja über articles/ gehen - und dort kommt leider der fehler

also konkret
api/articles/ hab auch api/articles versucht

Gleiche script läuft bei 5.6.9
mit slash /api/articles/ aber auch ohne /api/articles

Bei Shopware 5.7.4 das gleiche Problem

Schon mal im Log nachgeschaut? Ein Shopware-Fehler ist es nicht. Vielleicht liegt es an einem Artikel selber, dass er nicht auslesbar ist und dadurch keine Ausgabe kommt.

ne /articles/id functioniert und mit 5.6.9 läuft alles. es geht nur um die /articles/ also die ausgabe der Liste aller Artikel

der log gibt dies hier zurück - hier such ich mich grad durch

[2021-10-18T16:07:44.600228+02:00] core.CRITICAL: Method „Shopware::Router“ not found failure {„uid“:„428c5d4“}
[2021-10-18T16:07:44.600932+02:00] core.ERROR: Enlight_Exception: Method „Shopware::Router“ not found failure in /var/www/clients/client9/web175/web/engine/Shopware/Controllers/Api/Articles.php:54 Stack trace: #0 /var/www/clients/client9/web175/web/custom/plugins/SwagExtendArticleResource/Components/Api/Resource/Article.php(21): Shopware->__call(‚Router‘, Array) #1 /var/www/clients/client9/web175/web/engine/Shopware/Controllers/Api/Articles.php(54): SwagExtendArticleResource\Components\Api\Resource\Article->getList(0, 1000, Array, Array, Array) #2 /var/www/clients/client9/web175/web/engine/Library/Enlight/Controller/Action.php(182): Shopware_Controllers_Api_Articles->indexAction() #3 /var/www/clients/client9/web175/web/engine/Library/Enlight/Controller/Dispatcher/Default.php(461): Enlight_Controller_Action->dispatch(‚indexAction‘) #4 /var/www/clients/client9/web175/web/engine/Library/Enlight/Controller/Front.php(225): Enlight_Controller_Dispatcher_Default->dispatch(Object(Enlight_Controller_Request_RequestHttp), Object(Enlight_Controller_Response_ResponseHttp)) #5 /var/www/clients/client9/web175/web/engine/Shopware/Kernel.php(197): Enlight_Controller_Front->dispatch() #6 /var/www/clients/client9/web175/web/vendor/symfony/http-kernel/HttpCache/SubRequestHandler.php(85): Shopware\Kernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #7 /var/www/clients/client9/web175/web/vendor/symfony/http-kernel/HttpCache/HttpCache.php(479): Symfony\Component\HttpKernel\HttpCache\SubRequestHandler::handle(Object(Shopware\Kernel), Object(Symfony\Component\HttpFoundation\Request), 1, true) #8 /var/www/clients/client9/web175/web/engine/Shopware/Components/HttpCache/AppCache.php(262): Symfony\Component\HttpKernel\HttpCache\HttpCache->forward(Object(Symfony\Component\HttpFoundation\Request), true, NULL) #9 /var/www/clients/client9/web175/web/vendor/symfony/http-kernel/HttpCache/HttpCache.php(452): Shopware\Components\HttpCache\AppCache->forward(Object(Symfony\Component\HttpFoundation\Request), true) #10 /var/www/clients/client9/web175/web/vendor/symfony/http-kernel/HttpCache/HttpCache.php(346): Symfony\Component\HttpKernel\HttpCache\HttpCache->fetch(Object(Symfony\Component\HttpFoundation\Request), true) #11 /var/www/clients/client9/web175/web/engine/Shopware/Components/HttpCache/AppCache.php(189): Symfony\Component\HttpKernel\HttpCache\HttpCache->lookup(Object(Symfony\Component\HttpFoundation\Request), true) #12 /var/www/clients/client9/web175/web/vendor/symfony/http-kernel/HttpCache/HttpCache.php(224): Shopware\Components\HttpCache\AppCache->lookup(Object(Symfony\Component\HttpFoundation\Request), true) #13 /var/www/clients/client9/web175/web/engine/Shopware/Components/HttpCache/AppCache.php(114): Symfony\Component\HttpKernel\HttpCache\HttpCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #14 /var/www/clients/client9/web175/web/shopware.php(122): Shopware\Components\HttpCache\AppCache->handle(Object(Symfony\Component\HttpFoundation\Request)) #15 {main} {„uid“:„428c5d4“}

ah ich hab ein altes Plugin gefunden - > Shopware()->Router()->assemble($query) diese methode soll die single url des Artikels zurück geben → anscheined liegt hier das Problem…
Is nicht von uns - daher nie danach gesucht

Ja ja, das hatte ich schon verstanden :slight_smile:

Aber ein Blicks in die Logs (Shopware Log UND Server Log) kann manchmal schnell die Lösung finden.

Ich antworte hier mal, da ich vor dem gleichen Problem stehe. Die Fehlerursache habe ich schnell gefunden, doch die Lösung habe ich bisher nicht.

Wie kann ich denn nun bei SW 5.7.x die SEO URL erstellen, wenn Shopware()->Router() nicht mehr geht?
Jemand eine Idee?

Ahoi Stefan,

ich hab folgendes gefunden / eingebaut

$producturl = Shopware()->Front()->Router()->assemble([
‚module‘ => ‚frontend‘,
‚sViewport‘ => ‚detail‘,
‚sArticle‘ => $article[‚id‘],
]);