Fehler #686
Shopware Version > 6.4 akzeptiert den POST '/api/media?_response=true' nicht mehr => shopware erwartet uuids in der Version 7 als zusätzlichen Parameter
0%
Beschreibung
Folgender Code funktioniert:
my $new_media_entry->{id} = 'ef880f9328d4497ba905fbba903a538f';
my $ret = $self->connector->POST);
und im weiterem Verlauf:
$current_image_id = from_json($ret->responseContent())->{data}{id} if ($self->shopware_version < 6.4);
$current_image_id = $new_media_entry->{id} if ($self->shopware_version >= 6.4);
shopware_version hab ich als rose scalar für den Connector definiert, um einen entsprechenden Fallunterschied zu haben.
Weitere Infos dazu:
https://stackoverflow.com/questions/74533241/how-to-create-new-assets-media-for-product-in-shopware-6-using-api
https://stackoverflow.com/questions/63618200/add-images-via-shopware-6-api
https://www.uuidgenerator.net/version7
https://stackoverflow.com/questions/76999917/shopware-6-administration-error-the-string-is-not-a-valid-uuid
https://github.com/shopware/shopware/commit/58344d5e8819c2b024c454db784545bed4258b7f
https://www.matheusgontijo.com/2022/01/25/how-to-generate-uuid-in-shopware-6
Die aktuelle Empfehlung von shopware sieht ansonsten so aus, d.h. die erweitern erst das Produkt um den Medieneintrag und lädt erst danach das Bild hoch.
Damit ich nicht zuviel im aktuellen Code anpassen muss, hab ich mich am ersten StackOverflow Hinweis orientert. Aber wer das besser machen möchte, hier die aktuelle Empfehlung ab Shopware 6.4: