dojo.xhrPost错误地将特殊字符传递给服务器

时间:2017-09-08 14:05:16

标签: javascript character-encoding dojo

我们发现基于unix的文件名通过基于Windows的Web浏览器传递给我们的Windows服务器时出错。 dojo.xhrPost默认为ISO-8859-1字符编码。这将导致服务器接收格式错误的文件名,其中±将替换为±。

虽然有基于java的解决方案,包括可以添加到Tomcat的过滤器,但我们希望找到一种方法来改进我们的JavaScript。

下面提供的答案。

1 个答案:

答案 0 :(得分:0)

解决方案是强制xhrPost传递正确的contentType头信息,包括utf-8字符集说明符。

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