Massöverföring av bilder till AEM Dynamic Media misslyckas med felet "Inte ett filformat som stöds"

Massbildöverföringar till Adobe Experience Manager (AEM) Dynamic Media eller Scene7 misslyckas med fel som inte ett filformat som stöds eller inte ett giltigt format, även om bilderna är giltiga JPG-/JPEG-filer. Det här problemet inträffar vanligtvis vid automatiskt intag från fjärrservrar. Det handlar ofta om skript eller API-anrop.

Problemet beror på båda skyddsmekanismerna på fjärrservern som blockerar begäranden från standardklienter, vilket gör att AEM feltolkar HTML felsidor som bildfiler.

Du kan åtgärda detta genom att uppdatera strängen User-Agent eller justera serverinställningarna så att du kan hämta bilder utan att aktivera robotskydd.

Beskrivning description

Miljö

  • Produkt: Adobe Experience Manager Dynamic Media/Scene7
  • Överföringsmetod: Inmatning av massresurser, automatiska skript eller API-anrop (till exempel med funktionen UploadUrl)
  • Resurs-Source: Fjärr-/extern server via offentliga URL:er (t.ex. extern DAM, produktdatabas, partnerplattform)

Problem/symtom

  • JPG- och JPEG-bilder kan inte överföras och flaggas i Scene7-jobbloggarna som filformat som inte stöds eller inte ett giltigt format.
  • Delvis/inkonsekvent slutförande: Vissa filer i ett batchjobb överförs korrekt, andra misslyckas.
  • Manuell överföring eller hämtning av resurser (med en webbläsare) från samma URL fungerar vanligtvis.

Rotorsak

  • Fjärrservern som är värd för bildfilerna använder serversidans robotskydd som blockerar snabba eller automatiserade begäranden.
  • Förfrågningar från standardanvändaragenten för Apache HttpClient (Apache-HttpClient/4.5.x) har flaggats och blockerats.
  • Servern svarar med HTTP 429 (för många begäranden) och returnerar en felsida för HTML i stället för bilden.
  • Dynamic Media Server försöker bearbeta svaret från resurs-URL:en som en bild. Eftersom det i själva verket är HTML och inte en JPEG, loggar det som inte ett filformat som stöds eller inte ett giltigt format.

Upplösning resolution

Så här åtgärdar du problemet:

  1. Konfigurera fjärrservern för att tillåta begäranden från standardanvändaragenten för Apache HttpClient (Apache-HttpClient/4.5.14).

  2. Du kan också ändra skriptet eller programmet så att det använder en annan User-Agent-sträng som påminner om en standardwebbläsare, till exempel:

    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36

  3. Om det inte går att ändra serverkonfigurationer eller strängar för användaragent implementerar du hastighetsbegränsning i skriptet för att minska antalet samtidiga begäranden och undvika att utlösa startsdetektering.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f