版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xsb_20171227/article/details/86487724
如果XMLHttpRequest请求一个utf8编码的网站的话,中文可以使用js中的encodeURIComponent()方法进行转码
下面说一下请求gbk网站时,对中文的转码方法:
_encode(str, charset) {
//得到中文的gbk二进制数组
var buf = iconvLite.encode(str, charset);
var encodeStr = '';
var ch = '';
//将数组中的每一个元素转换成16进制,转换后的长度小于2的在前面加0,然后用%拼接
for (var i = 0; i < buf.length; i++) {
ch = buf[i].toString('16');
if (ch.length === 1) {
ch = '0' + ch;
}
encodeStr += '%' + ch;
}
encodeStr = encodeStr.toUpperCase();
return encodeStr;
}
如果上面还不能解决需要的话可以看看下面这个链接
https://segmentfault.com/a/1190000006919102