在chrome更新后,jQuery ajax调用无法从网页解码到utf-8字符集到Chrome扩展

问题描述 投票:2回答:1

我以前创建了谷歌浏览器的扩展程序,我使用jquery ajax从网页抓取了一个聊天,并在扩展程序弹出窗口中显示了更好的方式。现在,每个æøå字符都会显示unicode错误 。

我知道我和网站都没有做任何新的事情或改变了字符集。他们仍然在标题中定义了charset,并在页面上显示正确的字符。

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />

当然我在我的扩展上使用了uft-8字符集,但这在此之前不是问题。

我试图在我的ajax调用中将uft-8和ISO-8859-1定义为内容类型。现在我对此问题有点无能为力。字符集错误仅包括聊天,其他所有内容都是从一开始就处于当前状态。

Screenshot from the extension

整个源代码位于:https://github.com/Cmoen11/GS-Chat-Chrome-Extension

有趣的文件:index.js和index.html

jquery ajax google-chrome-extension character-encoding
1个回答
2
投票

只需在发送前更改你的mime

function fetchData()
...
timeout: 10000,
        contentType: 'Content-type: text/plain; charset=iso-8859-1',
        beforeSend: function(jqXHR) {
            jqXHR.overrideMimeType('text/html;charset=iso-8859-1');
        },
        success: function (newRowCount) {

...

参考:https://stackoverflow.com/a/14397845/3396168

© www.soinside.com 2019 - 2024. All rights reserved.