Page front hors framework Simplicité avec dépendance JS dans une resource (/resource?type=xxx&code=xxx)

Tags: #<Tag:0x00007f2f2d2c0e30>

Bonjour,
j’ai une page front hors framework Simplicité (générée par une objet externe habilité à PUBLIC appliquant un rendu Mustache) avec des dépendances (JS ou section de code HTML). Ces dépendances sont référencées dans le template Mustache sous la forme /resource?type=xxx&code=xxx.

Avec une session privée ouverte, les ressources sont bien chargées et l’affichage de la page fonctionne bien.

Avec une session publique (url /ext/objext sans session ouverte), les ressources ne sont pas chargées (404). Est-ce lié à une limitation des habilitation du user “public” qui n’aurait pas le droit de consommer les ressources ? Quel pattern d’inclusion des dépendances conseillez-vous?

Les resources sont bien utilisables aussi en zone publique, ex: https://demo.dev.simplicite.io/ext/DemoMustacheFrontend (cf. https://github.com/simplicitesoftware/module-demo-mustache)

Merci David pour ton retour rapide.
Je pense que le problème vient du fait que l’url vers la ressource est codée manuellement dans le template Mustache (/resource/…) alors dans ton exemple, toutes les ressources sont adressées via l’API HTMLTool.getResourceXXXURL(…).
Je corrige.

Oui il faut toujours utiliser les APIs quand elles existent car elle gèrent parfois des complexités et, surtout, garantissent la compatibilité ascendante/descendante (ce que ne garantissent jamais les URLs en dur)

Ici l’URL d’une ressource est de la forme /resource?row_id=..., l’API retrouve le row ID en question à partir de son code et ce à quoi elle est rattachée (ici à un objet externe). Il ne faut jamais mettre de row ID en dur dans du code car il peut changer d’une instance à l’autre, utiliser l’API est donc ici obligatoire