Export impossible sur Chrome lorsque le nom de l'objet contient des virgules

Tags: #<Tag:0x00007fdd4e2f1920>

Bonjour,

nous avons un objet dont le nom est “Family code, compact code, VCD or MTC source applications”.
Sous Chrome, l’export ne fonctionne plus. On obtient l’erreur : ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION

@bmo a déterminé que ce bug provient d’une évolution que vous avez fait afin de mettre le nom de l’objet dans le header HTTP. Il faudrait traiter le nom de l’objet avant de le mettre dans le header afin que cela ne perturbe pas Chrome.

Cordialement
Amandine T.

[Platform]
Status=OK
Version=4.0.P24
BuiltOn=2020-09-30 12:05 (revision 5a820e8be619728c3675ce2fc5d5beee3afe294a)
Encoding=UTF-8
EndpointIP=21.0.9.4
EndpointURL=http://7a2fca99d495:8080
TimeZone=Europe/Paris
SystemDate=2020-10-05 17:59:57

NB: On parle ici visiblement de la traduction de l’objet pas de son “nom” logique.

Cette traduction est désormais utilisée (en lieu et place du nom logique) dans le header HTTP Content-disposition pour donner un nom de fichier à télécharger au navigateur.

En recherchant sur le net à ce sujet je vois que l’encodage du nom de fichier est un pb récurrent et inhomogène entre navigateurs (sans surprise les caractères accentués et autres signes de ponctuation sont une source inépuisable de pbs) . On va voir ce qui est le plus simple à faire à ce sujet.

On a poussé un fix qui résout visiblement le pb des virgules dans la traduction.
Il n’y a pas de pb avec les caractères accentués français usuels non plus.
Et ça ne plante pas avec des caractères UTF-8 d’autres langues (ex: chinois), sur mon PC les caractères chinois sont remplacés par des underscores ou de blancs (ça dépend du navigateur)

Plus de pb donc, en tout cas avec les navigateurs avec lesquels j’ai testé = Chrome à jour, Firefox à jour et Edge à jour

Mais il n’est pas impossible qu’il y ait encore des pbs avec certains caractères UTF-8 et/ou sur certain navigateurs (à priori pas avec les virgules)

Ca sera poussé ce soir

Merci. En effet quand j’ai écrit nom de l’objet j’aurai du dire la traduction du nom.
Merci beaucoup.

Il y a eu un raté de backport, ce ne sera disponible sur toutes les branches 4.0 que dans le build de ce soir, désolé.