本文目录一览:
- 1、cookie可以存一个json吗或者存一个数组
- 2、Python: 模拟post请求时的相关问题:cookie,json
- 3、前台cookie中取出的json怎样解析成js对象
- 4、Cookie 里可以存储JSON格式的数据吗
cookie可以存一个json吗或者存一个数组
1、Cookie里面只能放String类型的值。
2、要保存json或数组格式的值,可以转为字符串后保存到cookies中。
3、从cookies中读取出来的值,通过eval把字符转为json或者再次解析出数组即可。
例子:
var a[2]; //a是一个数组
a[0]=0;a[1]=1;a[2]=2;//数组值分别是 0 1 2
var c=a[0]+","+a[1]+","+a[2]; //此处是通过逗号连接上面的数组,c的值是 c="0,1,2"
下面要做的就是把c的值写入cookies即可。
从cookies读取出c的值,再用split函数以逗号分割c即得到原来a数组。
Python: 模拟post请求时的相关问题:cookie,json
需求:模拟客户端进行post请求,除业务参数外,还需带有sign参数
在实现该需求时,使用了 requests.request()方法: requests.request('POST',url,data=rdata,cookies=rcookie),随后执行时遇到了以下问题:
原因:缺失了header相关信息
解决方法:在header中添加 User-Agent 和 refer等相关信息
原因:请求的body中,需以 json 形式传参,而初始调用时使用的为data
解决方法:解决方法有俩,
① 因为request() 参数中本来即存在 json,可直接使用json来传参,即:
requests.request('POST',url,json=json.dumps(rdata),cookies=rcookie)
② 也可继续使用 data 参数,此时需指定 content-type:
P.S. 若不指定content-type,data为dict时,默认为application/x-www-form-urlencoded;
data为str时,则默认为application/json。
前台cookie中取出的json怎样解析成js对象
使用eval,举例:
var a="[{\"at1\":\"test1\",\"at2\":\"test2\"}]";
var b=eval("("+ a +")");
这样b为JSON对象了。
Cookie 里可以存储JSON格式的数据吗
Cookie 里可以存储JSON格式的数据的,json格式的数据其实就是符合key-value键值对的字符串格式的数据。
举例说明:
$(function () {
var wowohistory = $.JSONCookie("wowohistory");//读取json格式cookie
var id = $("#selectgoodsid").val();
var img = $("#gooddefimg").val();
var name = $("#productName").text();
if (typeof (wowohistory.goods) == "undefined") {//判断cookie是否存在
wowohistory = { "goods": [
{ "goodid": id, "img": img, "name": name}]
};
$.JSONCookie("wowohistory", wowohistory, { path: '/', expires: 20 });//存储json格式cookie数据。
}
})