Violations CORS intermittentes lors de l’incorporation de contenu Edge Delivery Services dans AEM Sites

Cet article explique comment résoudre les violations CORS (Cross-Origin Resource Sharing) intermittentes lors de l’incorporation de ressources Adobe Experience Manager (AEM) Edge Delivery Services (EDS) dans des pages Adobe Experience Manager (AEM) Sites à l’aide de l’approche aem.live embed. Ces problèmes peuvent avoir une incidence sur les demandes de fichiers JavaScript, d’API et d’autres ressources hébergées sur le site EDS, ce qui entraîne un comportement de chargement incohérent. Pour résoudre ce problème, validez les en-têtes CORS et recherchez les incohérences liées à la mise en cache ou à la propagation.

Description description

Environnement

  • Sites Adobe Experience Manager (AEM) (toutes versions)
  • Edge Delivery Services (EDS)

Problème/Symptômes

  • Les requêtes de ressources échouent par intermittence en raison de violations de la politique CORS.
  • Les erreurs de la console de navigateur indiquent les échecs liés à CORS.
  • Le problème se produit de manière aléatoire et n’affecte pas chaque requête.
  • Les requêtes de ressources EDS incorporées, telles que les fichiers JavaScript ou les API, peuvent échouer de manière inattendue.

Cause première

Des violations CORS intermittentes peuvent se produire lorsque les en-têtes de réponse requis ne sont pas renvoyés de manière cohérente avec chaque requête. Ce comportement peut résulter de problèmes de configuration, d’incohérences de mise en cache ou de délais de propagation entre les couches de diffusion CDN ou Edge.

Résolution resolution

Suivez les étapes ci-dessous pour résoudre le problème :

  1. Vérifiez que le site EDS est configuré pour renvoyer l’en-tête Access-Control-Allow-Origin approprié pour toutes les ressources accessibles à partir des pages AEM Sites, y compris les fichiers JavaScript et les points d’entrée de l’API. Vérifiez que les valeurs d’en-tête configurées correspondent aux origines effectuant les requêtes.
  2. Passez en revue la configuration de l’éditeur d’en-tête HTTP et assurez-vous que les règles d’en-tête sont appliquées de manière cohérente sur tous les chemins et types de fichiers requis. Recherchez les règles manquantes, se chevauchant ou conflictuelles qui pourraient entraîner une diffusion d’en-tête incohérente.
  3. Capturez un fichier HAR lors de la reproduction du problème. Activez Conserver le journal dans l’onglet Réseau du navigateur et passez en revue les requêtes en échec pour déterminer si l’en-tête Access-Control-Allow-Origin est présent et s’il correspond à l’en-tête Origin de la requête. Vérifiez également si des demandes de contrôle en amont OPTIONS échouent ou renvoient des réponses inattendues.
  4. Si les en-têtes CORS sont correctement configurés, mais sont manquants par intermittence, étudiez le comportement du réseau CDN et du cache Edge. Testez avec des paramètres de démantèlement de cache ou purgez les caches appropriés pour exclure les réponses obsolètes ou incohérentes mises en cache.
  5. Si le problème persiste, collectez les fichiers HAR avec des captures d’écran de la configuration de l’éditeur d’en-tête HTTP et fournissez-les au support Adobe pour une analyse plus approfondie.
  6. Vérifiez la résolution en confirmant que les requêtes d’AEM Sites aux ressources EDS réussissent systématiquement et qu’aucune erreur CORS n’apparaît dans la console du navigateur.
recommendation-more-help
experience-cloud-kcs-help-kbarticles