ajax传输中文时URL中文显示乱码

问题遇到的现象和发生背景

ajax传输中文时URL中文显示乱码 后端收到的也是乱码

问题相关代码,请勿粘贴截图

前端接口

let str = "Display=" + display + "&host=" + host + "&HostIP=" + HostIP + "&remarks=" + remarks;
                chgActionSender(str)
/////////
function chgActionSender(val) {
    xhr_chgAction = createXHR();
  
            xhr_chgAction.open("GET", "../cgi-bin/SetNtpRestrict.cgi?" + val, false);
            xhr_chgAction.send(null);
}

后端代码

sscanf(Data,"Display=%[^&]&host=%[^&]&HostIP=%[^&]&remarks=%s",szTmpa, szTmpa1,szTmpa2, szTmpa3);
        printf("%s%s%s%s",szTmpa,szTmpa1,szTmpa2,szTmpa3);
运行结果及报错内容

img

我的解答思路和尝试过的方法

百度了半天,加了好多转码的方法,最后都不行

我想要达到的结果

encodeURI(encodeURI("url的中文参数值")) 然后后台接收的时候解码