如何有效将json数据从一个静态页面传递到另一个静态页面?
前阵子在某一个项目里遇到这一个问题,目前采用下面的方法:
(1)发送页面:将json格式数据转换为json字符串,url编码一次,base64编码一次,最后在地址带上处理后的数据跳向接收页面;
(2)接收页面:拿到地址切割出处理后的数据,base64解码,url解码,转换为json格式。
基本的代码如下:
(1)发送页面
var data = {
'name': 'terry_chan',
'property': []
};
var a = json5.stringify(data); //(需要引入json5库)
var b = encodeURIComponent(a); // 先进行url编码,将中文字符转码
var c = base64.encode(b); // 再进行base64编码(需要引入base64库)
window.location.href = '/target.html?' + c;
(2)接收页面
var sec = location.href.split('?')[1];
var a = base64.decode(sec);
var b = decodeURIComponent(a);
var c = json5.parse(b); //得到原json数据
这种方式目前没有遇到大的问题,因为传递的数据不大,但是担心以后传递的数据会变得很大。
求解,有没有更好的方法在静态页面传递json数据?
没事,不会太大的,你总不能传递好几兆吧。
付款页面是要和订单挂钩的啊。不然你知道这个是给谁了?