我正在开发一个使用AngularJS的Javascript项目。当我使用http请求获取数据时,所有字符都显示正常。例如,带有ajax的下载字符串是“räksmörgås”,当以纯文本形式写入控制台时,会出现丑陋的字符。
r�ksm�rg�s
会产生这样的结果:{{1}}
这是文件类型编码问题吗?或者JavaScript字符串总是UTF-16导致此问题?
答案 0 :(得分:1)
我认为问题在于你没有使用正确的字符集。对于瑞典语,请尝试将字符编码更改为iso-8859-1
或windows-1252
。我假设您发送的服务器响应没有正确的标头,浏览器将其解释为UTF-8作为默认字符集。
因此,如下所示更改标题字符集将解决问题:
Content-Type: text/plain; charset=windows-1252 // or
Content-Type: text/plain; charset=iso-8859-1
另一种解决方案是使用charset声明脚本标记,这样就可以强制Js处理要使用特定编码解释的字符。
<script src="yourscritp.js" charset="UTF-8"></script>