这几天公司用nodejs+mongodb来做些东西,UI用的是kendo UI 碰到一个问题:
举个例子var a={"name":"张三","age":24,"sex":"男"};
传到服务端后端接收到的数据会变成{"name":"张三","age":"24","sex":"男"},数字型的24变成字符串的"24"了,后来经过多次尝试终于在大家的努力下搞定了,解决方法如下
前端把a对像转成字符串以后,用encodeURI编码写成{'q':encodeURI(JSON.stringify(a))}这种型式,后端服务器端接收
1 var querystring =require("querystring"); 2 var doc = {}; 3 if (req.query) { 4 var tmp=querystring.unescape(req.query.q); 5 doc = JSON.parse(tmp); 6 }
这样就解决了数字型传到后端变成字符串型的问题了。