2017-09-08 2 views
0

Nous avons découvert une erreur avec les noms de fichiers basés sur unix qui sont transmis à notre serveur Windows via les navigateurs Web Windows. Par défaut, dojo.xhrPost utilise le codage de caractères ISO-8859-1. Cela conduirait le serveur à recevoir des noms de fichiers mal formés, où ± serait remplacé par ±.dojo.xhrPost passer des caractères spéciaux de manière incorrecte au serveur

Alors qu'il existe des solutions Java, y compris des filtres, qui peuvent être ajoutées à Tomcat, nous voulions trouver un moyen de corriger cela dans notre JavaScript.

Réponse fournie ci-dessous.

Répondre

0

La solution consistait à forcer xhrPost à transmettre les informations d'en-tête contentType correctes, y compris le spécificateur de jeu de caractères utf-8.

dojo.xhrPost{ 
    url: resURL, 
    handleAs: "xml", 
    load: callBackResetForm, 
    contentType: "application/x-www-form-urlencoded; charset=utf-8", 
    .... 
})