在好久远的VM页面代码(2014年的代码)中进行落数,须要传一个keyWord(搜索关键词)参数,后端数据中没有返回,其余地方也无从获取,前端考虑从页面url中获取,经过通常前端方法进行解析后,并无什么卵用。javascript
看了下页面的编码格式是gbk,返回的是gbk的编码,这种编码js是没法直接解析的,只能建立一个html节点,字符放进去而后取出来应该才能够。css
用script标签来解析,其实就是须要让浏览器能识别这个gbk编码,由于js自己没有gbk编码转换的html
function gbkconvert(gbkStr, callback) {
var script = document.createElement('script');
script.id = 'gbkconvert';
script.src = 'data:text/javascript;charset=gbk,gbkconvertCb("' + gbkStr + '");';
document.body.appendChild(script);
window.gbkconvertCb = (res) => {
callback && callback(res);
};
}
gbkconvert('%CE%D2%CA%C7gbk%B1%E0%C2%EB',(res) => {
console.log(res);
})
复制代码
data类型的Url大体有下面几种形式。前端
data:,<文本数据>
data:text/plain,<文本数据>
data:text/html,<html代码>
data:text/html;base64,<base64编码的html代码>
data:text/css,<css代码>
data:text/css;base64,<base64编码的css代码>
data:text/javascript,<javascript代码>
data:text/javascript;base64,<base64编码的javascript代码>
data:image/gif;base64,base64编码的gif图片数据
data:image/png;base64,base64编码的png图片数据
data:image/jpeg;base64,base64编码的jpeg图片数据
data:image/x-icon;base64,base64编码的icon图片数据
复制代码
data格式的Url最直接的好处是,这些Url本来会引发一个新的网络访问,由于那里是一个网页的地址,如今不会有新的网络访问了,由于如今这里是网页的内 容。这样作,会减小服务器的负载,固然同时也增长了当前网页的大小。因此对“小”数据特别有好处。java