1

我在一个使用旧 ASP 3.0 以 iso-8859-1 编码完成的网站上工作。我使用 Yahoo YQL 从外部网站请求数据 (XML),但我要求将其作为 JSON-P 返回(带有回调函数的 JSON,以便我可以检索数据)。

我面临的问题是 YQL 似乎总是返回以 utf-8 编码的数据,当我尝试显示从该查询中检索到的任何文本数据时,这对我不利。由于编码不匹配,é、à、ô 等字符在 IE6 和 IE7 中会出现乱码。

任何人都知道如何将通过 JSON-P 和 YQL 检索到的 utf-8 数据转换为 iso-8859-1 并正确显示?

我已经尝试过该解决方案,但它不起作用。服务器端函数也不是一个选项,ASP 3.0 不包含诸如 utf8_decode 之类的函数。

谢谢

4

1 回答 1

2

我不知道这是否可行,但如果您愿意,可以尝试以下方法。

引用远程 JS 文件时,<script>标记可以具有charset指定的属性。请参阅此处的理论。这绝对适用于存储在 JavaScript 文件中的内容,例如使用document.write.

隐式转换是否适用于通过 JSONP 在该文件中定义的例程获取的数据?我不知道。我的猜测是,可能不会。我现在无法测试它,但如果你这样做,我会对结果非常感兴趣。

于 2010-02-02T21:40:09.147 回答