中文字母显示为?

问题描述 投票:0回答:0

我收到了对我的 javascript 函数的 json 响应,我在其中进一步发送了我的数据,但只是为了检查数据是否正确传递,我使用了 console.log 以便我可以检查。

function getData(urlExtension, data, callback){
        console.info("Getting autocomplete data from \""+urlExtension+"\" with data:", data)
        $.ajax({
            url: window.location.origin + urlExtension,
            data: data,
            dataType : "json;charset=utf-8",
            type : "GET",
            success : function(data, textStatus, jqXHR) {
                console.log(data);
                callback(data);
            },
            error : function(jqXHR, textStatus, errorThrown) {
                console.error("in global search autocomplete ajax.error", textStatus, errorThrown, jqXHR)
            }
        })
    }

这是我的 JS 代码,我尝试使用 encodeURIcomponent 对接收到的数据进行编码并将其解码并打印 然后我在我的控制台上接收输出作为 object object object 我也试过 console.dir(decodedData);但输出是 object object

Account name : ACCOUNTNAME":"机械测试中心中国机械工业研究所"的输出假设是这样的 但我在控制台上收到的是 ACCOUNTNAME:“???????????????”

使用后

const encodedString = encodeURIComponent(data);
console.log(encodedString); 
const decodedString = decodeURIComponent(encodedString);
console.log(JSON.stringify(decodedString));

控制台上的输出是这样的object object object object

我已经确认我从 servlet 发送的数据已正确编码,浏览器编码也设置为 utf-8 并且我使用的是 tomcat 服务器。

请让我知道我可以做哪些改变,这样我才能得到合适的中文字母

谢谢, 阿南德

javascript json web servlets
© www.soinside.com 2019 - 2024. All rights reserved.